Part Number Hot Search : 
045CT 1N5393S K2225CX OP113 74HC5950 CY24204 L0G226M P1600
Product Description
Full Text Search
 

To Download TSYS01 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  sensor solutions /// meas TSYS01 dcs development kit 07/2016 page 1 detailed example software and drivers are available that execute directly, without modification, on a number of development boards t hat support an integrated or synthesized microprocessor. the downlo ad contains several source files intended to accelerate custome r evaluation and design. the source code is written in standard ansi c format, and all development documentation including theory/op eration, register description, and function prototypes are documented in the interface file. specifications ? measures temperature from -40c to 125c ? i 2 c communication ? fully calibrated ? fast response time ? very low power consumption reference material ? detailed information regarding operation of the ic: TSYS01 datasheet ? detailed information regarding the peripheral module: TSYS01 peripheral module ? complete software sensor evaluation kit for zedboard: TSYS01_zedboard.zip meas TSYS01 digital component sensor (dc s) driver for z ed board digital temperature sensor software development kit
meas TSYS01 dcs for z ed board digital temperature sensor sensor solutions /// meas TSYS01 dcs development kit 07/2016 page 2 drivers & software detailed example software and drivers are available that execute d irectly, without modification, on a number of development boards that support an integrated or synthesized microprocesso r. the download contains several source files intended to accelerate customer evaluation and design. the source code is wri tten in standard ansi c format, and all development documentation including theory/operation, register description, and function prototypes are documented in the interface file . functions summary enumerations enum TSYS01_address { TSYS01_i2c_address_csb_0, TSYS01_i2c_address_ csb_1 } enum TSYS01_status { TSYS01_status_ok, tsys 01_status_i2c_transfer_error } functions void TSYS01_init (u32) initializes the axi address of the axi iic core and set s the default i 2 c address to 0x77. void TSYS01_set_address (enum TSYS01_address) sets the i 2 c address of the device. enum TSYS01_status TSYS01_reset (void) sends i 2 c reset command to the TSYS01 device. enum TSYS01_status TSYS01_read_prom (void) reads the factory calibrated coefficients for use in te mperature conversion. enum TSYS01_status TSYS01_read_temperature (float *) reads the temperature adc value and computes the compen sated value in degrees celsius. project setup this project is based on a zedboard . the fpga hardware and the console application will be loaded via sd card. you will need: ? zedboard ? TSYS01 sensor for digilent pmod? board ? sd card ? zedboard power adapter ? usb- to -microusb cable for uart communications ? a computer with a card reader to write to the sd card and to host a termi nal emulator the following steps will guide you through setting up the hard ware platform: 1. first, if you have not connected your computer to a zedboard or microzed device before, you will likely need to download and install the silicon labs cp2104 usb-to_uart driver. the setup gu ide for installing the driver can be found at the address below: http://www.zedboard.org/sites/default/files/documentations/cp210x_se tup_guide_1_2.pdf
meas TSYS01 dcs for z ed board digital temperature sensor sensor solutions /// meas TSYS01 dcs development kit 07/2016 page 3 2. next, attach the sd card to your computer via a card reader or through the bui lt-in sd card slot. download the boot.bin file that pertains to the ms5637 from the software link and copy it o nto the sd card so that it is the only file present on the file system. 3. safely eject the sd card from your computer. insert the sd card into the card slot on the back of the zedboard. 4. connect the TSYS01 digital pressure s ensor to the jc digilent pmod? port of the zedboard (1), ensure that jumpers jp7, jp8, jp9, jp10, and jp11 are configured such that the zedboard will boot from the sd card on start-up (2), and connect the power adapter to the barrel jack on the zedboard (3). fi nally connect the micro-usb cable to the micro-usb por t of the zedboard that is label ed uart (4). the usb cable will facilitate uart transmissions for the console application. zedboard, microzed and digilent pmod ? a re trademarks.
meas TSYS01 dcs for z ed board digital temperature sensor sensor solutions /// meas TSYS01 dcs development kit 07/2016 page 4 5. turn on the power to the board with the switch next to the barrel jack . when the board powers up, the zedboard will illuminate a green power led. after close to 30 seconds, the fpga will b e successfully programmed by the boot image on the sd card and a b lue done led will illuminate on the zedboard. your hardware should appear as shown below. if the board was powered on before this step, turn the power off and repea t this step. 1 2 3 4 2
meas TSYS01 dcs for z ed board digital temperature sensor sensor solutions /// meas TSYS01 dcs development kit 07/2016 page 5 launching the console application now that you have successfully set up your hardware platform, you a re ready to run the console application. 1. upon power-on, the console application should already be ru nning. it will be necessary to open a terminal and configu re a serial connection to interact with the console application. do thi s by opening tera term (which can be downloaded from http://en.sourceforge.jp/projects/ttssh2/releases/ ) or a similar terminal emulation software package. 2. tera term may display an error when it starts up if it tries to conn ect to a com port where no device is present. it is safe to ignore this warning, so click ok. next, open the setup menu and click t he serial port option. 3. now select the appropriate com port that your zedboard setup is c onnected to. if you are not sure which this is, refer to the device manager. configure your serial connection with 115200 baud, 8 bit data, no parity, 1 stop bit, and no flow control, and then click ok. 4. you should now have a live connection open to the console ap plication running on the zedboard. press enter and the console application will display the main menu from which yo u can perform several tasks on the ms8607 digital pressure sensor. zedboard is a trademark.
meas TSYS01 dcs for z ed board digital temperature sensor sensor solutions /// meas TSYS01 dcs development kit 07/2016 page 6 running the console application the console application is intended to demonstrate the required op erations when using the sensor. a. the TSYS01 software must have an i 2 c address set or it may not function. do this by selecting (1) before performin g any other options. b. second, after startup, it is a good idea to reset the sensor. this pu ts it in a known state. do this by selecting (2) in th e console application. c. each sensor is tested at the factory to determine the variation o f the sensor due to fabrication. calibration coefficients are stored in the device at that time for later use in calculating the c orrect output. these coefficient values must be read fro m the device and stored in software variables before temperature me asurements can be taken. do this by selecting (3) in the console application. now the sensor and the software are setup. these first three steps only need to be performed once at power up. d. th e console application option (4) reads the temperature once. e. the console application option (5) reads the temperature 20 times a t approximately two measurements per second and displays them to the screen in real time. application code this section is intended to provide a basic example of function ality. /* * copyright (c) 2009-2012 xilinx, inc. all rights reserved. * * xilinx, inc. * xilinx is providing this design, code, or inform ation "as is" as a * courtesy to you. by providing this design, code , or information as * one possible implementation of this feature, a pplication or * standard, xilinx is making no representation tha t this implementation * is free from any claims of infringement, and you are responsible * for obtaining any rights you may require for you r implementation. * xilinx expressly disclaims any warranty whatsoev er with respect to * the adequacy of the implementation, including bu t not limited to * any warranties or representations that this impl ementation is free * from claims of infringement, implied warranties of merchantability * and fitness for a particular purpose. * */ /* * meas_TSYS01_main.c: console application for test ing the TSYS01 * * this application configures uart 16550 to baud r ate 9600. * ps7 uart (zynq) is not initialized by this appli cation, since * bootrom/bsp configures it to baud rate 115200 * * ------------------------------------------------ * | uart type baud rate | * ------------------------------------------------ * uartns550 9600 * uartlite configurable only in hw design * ps7_uart 115200 (configured by bootrom/bsp) */ #include #include #include "platform.h" #include "xparameters.h" #include "TSYS01.h" #define xpar_axi_iic_jc_baseaddr xpar_iic_0_baseaddr void TSYS01_main_menu ( void ); int main () { char key_input; char prom_read_flag=0; int i; TSYS01_status stat; float temperature;
meas TSYS01 dcs for z ed board digital temperature sensor sensor solutions /// meas TSYS01 dcs development kit 07/2016 page 7 //initialize the uart init_platform(); // set the axi address of the iic core and // initialize the i2c address to 0x77 TSYS01_init(xpar_axi_iic_jc_baseaddr); // display the main menu TSYS01_main_menu(); // infinite loop while (1){ // get keyboard input read (1, ( char *)&key_input, 1); if (key_input == '1' ){ //if the '1' key is pressed // display address selection menu printf ( "\ n" ); printf ( "select an address:\ n" ); printf ( " (0) - csb is set low (address=0x77)\ n" ); printf ( " (1) - csb is set high (address=0x76)\ n" ); // get keyboard input ignoring keypresses that are not '0' or '1' read (1, ( char *)&key_input, 1); while (key_input!= '0' && key_input!= '1' ){ read (1, ( char *)&key_input, 1); } if (key_input == '0' ){ // if the '0' key is pressed // set i2c address to 0x77 TSYS01_set_address( TSYS01_i2c_address_csb_0 ); printf ( "set TSYS01 i2c address to 0x77 (csb low)\ n" ); } else if (key_input == '1' ){ // if the '1' key is pressed // set i2c address to 0x76 TSYS01_set_address( TSYS01_i2c_address_csb_1 ); printf ( "set TSYS01 i2c address to 0x76 (csb high)\ n" ); } // wait for another key press and then display the main menu again printf ( "\npress any key to continue...\ n" ); read (1, ( char *)&key_input, 1); TSYS01_main_menu(); } else if (key_input == '2' ){ //if the '2' key is pressed // send the reset command to the TSYS01 printf ( "\ n" ); printf ( "resetting TSYS01...\ n" ); stat = TSYS01_reset(); // display the status returned from the reset opera tion printf ( "TSYS01 reset complete with status: " ); if (stat== TSYS01_status_ok ) printf ( " ok .\ n" ); if (stat== TSYS01_status_i2c_transfer_error ) printf ( "transfer error.\ n" ); // wait for another key press and then display the main menu again printf ( "\npress any key to continue...\ n" ); read (1, ( char *)&key_input, 1); TSYS01_main_menu(); } else if (key_input == '3' ){ // if the '3' key is pressed // read the prom coefficients from the TSYS01 printf ( "\ n" ); printf ( "reading prom coefficients...\ n" ); stat = TSYS01_read_prom(); // display status returned from read_prom operation // and display prom values if successful printf ( "read prom complete with status: " ); if (stat== TSYS01_status_ok ){ prom_read_flag=1; printf ( " ok .\ n" ); printf ( "\ n" ); printf ( "_________________________________________________\ n" ); printf ( "| prom addr |coeff (base 10)| coeff (hex) |\ n" ); printf ( "| ---------------+---------------+---------------|\ n" ); for (i=0;i<5;i++){ printf ( "| \t%d\t| %5d\t| 0x%4x\ t| \ n" ,i,( unsigned int )TSYS01_prom_coeffs[i],( unsigned int )TSYS01_prom_coeffs[i]); } } else if (stat== TSYS01_status_i2c_transfer_error ){ printf ( "transfer error.\ n" ); } // wait for another key press and then display the main menu again printf ( "\npress any key to continue...\ n" ); read (1, ( char *)&key_input, 1);
meas TSYS01 dcs for z ed board digital temperature sensor sensor solutions /// meas TSYS01 dcs development kit 07/2016 page 8 TSYS01_main_menu(); } else if (key_input == '4' ){ // if the '4' key is pressed if (prom_read_flag==0){ // prom was not yet read -- cannot read temperature yet printf ( "prom coefficients have not yet been read. cannot c omplete temperature read.\ n" ); } else { // prom has been read -- continue on to read temperature // read one temperature value printf ( "\ n" ); printf ( "reading temperature value...\ n" ); stat = TSYS01_read_temperature(&tem perature); // display the status returned from the read_temper ature // operation and display the temperature if success ful printf ( "temperature read complete with status: " ); if (stat== TSYS01_status_ok ){ printf ( " ok .\ n" ); printf ( "temperature : %5.2f%cc\ n" ,temperature,248); } else if (stat== TSYS01_status_i2c_transfer_error ){ printf ( "transfer error.\ n" ); } } // wait for another key press and then display the main menu again printf ( "\npress any key to continue...\ n" ); read (1, ( char *)&key_input, 1); TSYS01_main_menu(); } else if (key_input == '5' ){ // if the '5' key is pressed if (prom_read_flag==0){ // prom was not yet read -- cannot read temperature yet printf ( "prom coefficients have not yet been read. cannot c omplete temperature reads.\ n" ); } else { // prom has been read -- continue on to read temperatures // read 20 temperature values at ~2 per second printf ( "\ n" ); printf ( "reading 20 temperature values...\ n" ); for (i=0;i<20;i++){ stat = TSYS01_read_temperature( &temperature); if (stat== TSYS01_status_ok ){ printf ( "%2d: %5.2f%cc\ n" ,i+1,temperature,248); } else { printf ( "transfer error.\ n" ); } usleep(490000); } } // wait for another key press and then display the main menu again printf ( "\npress any key to continue...\ n" ); read (1, ( char *)&key_input, 1); TSYS01_main_menu(); } else if (key_input == 27){ // if the 'esc' key is pressed // print done and exit. printf ( "done.\ n" ); break ; } else { // if some other key is pressed // redisplay the main menu TSYS01_main_menu(); } } return 0; } void TSYS01_main_menu ( void ){ //clear the screen printf ( "\033[2j" ); //display the main menu printf ( "*******************************************\ n" ); printf ( "**** measurement specialties ****\ n" ); printf ( "*******************************************\ n" ); printf ( "\ n" ); printf ( " TSYS01 - digital temperature sensor \ n" ); printf ( "-------------------------------------------\ n" ); printf ( "\ n" ); printf ( "select a task:\ n" ); printf ( " (1) - set TSYS01 i2c address\ n" ); printf ( " (2) - reset TSYS01\ n" ); printf ( " (3) - read TSYS01 prom coefficients\ n" ); printf ( " (4) - read TSYS01 temperature once\ n" );
meas TSYS01 dcs for z ed board digital temperature sensor sensor solutions /// meas TSYS01 dcs development kit 07/2016 page 9 printf ( " (5) - read TSYS01 temperature 20 times\ n" ); printf ( " (esc) - quit\ n" ); printf ( "\ n" ); return ; } product sheet meas france sas, a te connectivity company. impasse jeanne benozzi cs 83 163 31027 toulouse cedex 3, france tel:+33 (0) 5 820 822 02 fax: +33 (0) 5 820 821 51 customercare.tlse@te.com te.com/sensorsolutions . meas, te connectivity and te connectivity (logo) are trademarks. all oth er logos, products and/or company names referred to herein might be trademarks of their respective owners. digilent pmod ? is a trademark of digilent inc. microzed and zedboard are trademarks the information given herein, including drawings, illustrations and schematics which are intended for illustration purposes only, is believed to be reliable. however, te connectivity makes no warra nties as to its accuracy or completeness and disclaims any liability in connection with its use. te connectivitys obligat ions shall only be as set forth in te connectivitys standard terms and conditions of sale for this product and in no case will te connectivity be liable for any incidental, indirect or consequential damages arising out of the sale, resale, use or misuse of the product. users of te connectivity products should make their own evaluation to determine t he suitability of each such product for the specific application. ? 2016 te connectivity ltd. family of companies all rights reserved. permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "software"), to deal in the software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the so ftware, and to permit persons to whom the software is furnished to do so, subject to the following conditions: the above copyright notice and this permission notice shall be included in all copies or substantial portions of the so ftware. the software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranti es of merchantability, fitness for a particular purpose and noninfringement. in no event shall the authors or copyright ho lders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of o r in connection with the software or the use or other dealings in the software.


▲Up To Search▲   

 
Price & Availability of TSYS01

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X