Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
shtlib.cpp
00001 #include "shtlib.h" 00002 00003 int sht_writefile(SHT75 sht,float *ptr_temperature,float *ptr_humidity) { 00004 float humi_f,rh_lin,rh_true; // working registers for Illustration purposes 00005 int t; // temporary store for the temp ticks 00006 int h; // temp store for the humidity ticks 00007 sht.readTempTicks(&t); 00008 *ptr_temperature = ((float)(t) * SHT_D2) + SHT_D1; 00009 sht.readHumidityTicks(&h); 00010 humi_f = (float)(h); 00011 rh_lin = SHT_C3 * humi_f * humi_f + SHT_C2 * humi_f + SHT_C1; 00012 rh_true=(((*ptr_temperature/100)-25)*(SHT_T1+SHT_T2*humi_f)+rh_lin); 00013 if (rh_true>100)rh_true=-1; //cut if the value is outside 00014 if (rh_true<1)rh_true=-1; //the physical possible range 00015 *ptr_humidity = rh_true; 00016 return 0; 00017 } 00018 00019 00020 int sht_init(SHT75 sht, const char *hwAddr, char *text_temp, char *text_humi) { 00021 int t; 00022 char shtcode[9]; 00023 sht.reset(); 00024 if (sht.readTempTicks(&t)==true) { 00025 shtcode[7]=hwAddr[5]; 00026 shtcode[6]=hwAddr[4]; 00027 shtcode[5]=hwAddr[3]; 00028 shtcode[4]=hwAddr[2]; 00029 shtcode[3]=hwAddr[1]; 00030 shtcode[2]=hwAddr[0]; 00031 shtcode[1]=0x00; 00032 shtcode[0]=0x80; //famille SHT_temp 00033 shtcode[8]=crc8((uint8_t*)&shtcode[0],8); 00034 sprintf(text_temp,"%02X%02X%02X%02X%02X%02X%02X%02X%02X", 00035 shtcode[0], shtcode[1], shtcode[2], 00036 shtcode[3], shtcode[4], shtcode[5], 00037 shtcode[6], shtcode[7], shtcode[8]); 00038 shtcode[0]=0x81; //famille SHT_humi 00039 shtcode[8]=crc8((uint8_t*)&shtcode[0],8); 00040 sprintf(text_humi,"%02X%02X%02X%02X%02X%02X%02X%02X%02X", 00041 shtcode[0], shtcode[1], shtcode[2], 00042 shtcode[3], shtcode[4], shtcode[5], 00043 shtcode[6], shtcode[7], shtcode[8]); 00044 return true; //sht present 00045 } 00046 return false;//sht absent 00047 }
Generated on Tue Jul 12 2022 16:41:44 by
1.7.2