40 #define DS1621ADDR 0x90 //DS1621 address with all pins tied low
41 #define ACCESS_CONFIG 0xAC
42 #define START_CONVERT 0xEE
43 #define READ_TEMP 0xAA
45 void writeConfigDS1621(
uint8_t u8_i) {
49 void startConversionDS1621() {
59 return ((i16_temp<<8)|u8_lo);
64 float f_tempC,f_tempF;
67 writeConfigDS1621(0x00);
68 startConversionDS1621();
71 i16_temp = readTempDS161();
73 f_tempC = f_tempC/256;
74 f_tempF = f_tempC*9/5 + 32;
81 printf(
"Temp is: 0x%0X, %d (C), %d (F)\n", i16_temp, i16_tempC, i16_tempF);
85 printf(
"Temp is: 0x%0X, %4.4f (C), %4.4f (F)\n", i16_temp, (
double) f_tempC, (
double) f_tempF);