X-Git-Url: http://git.smho.de/gw/?p=owSlave2.git;a=blobdiff_plain;f=DS18B20_MAX44009_DS2438_SHT%2FDS18B20_DS2438.c;fp=DS18B20_MAX44009_DS2438_SHT%2FDS18B20_DS2438.c;h=affc5091082f780cf83b8b0d1f1970f21f67d5bc;hp=3cdc7ec47930091bbebf350edf800b874e6bf05f;hb=cd92472e6fd63693741f8e168123a4182802651b;hpb=0f5b4d994ac87afdd294f6fc79692bcf92e337de diff --git a/DS18B20_MAX44009_DS2438_SHT/DS18B20_DS2438.c b/DS18B20_MAX44009_DS2438_SHT/DS18B20_DS2438.c index 3cdc7ec..affc509 100644 --- a/DS18B20_MAX44009_DS2438_SHT/DS18B20_DS2438.c +++ b/DS18B20_MAX44009_DS2438_SHT/DS18B20_DS2438.c @@ -60,7 +60,7 @@ extern uint8_t mode; extern uint8_t gcontrol; extern uint8_t reset_indicator; extern uint8_t alarmflag; -volatile uint8_t wdcounter; +volatile uint8_t wdcounter=5; #if defined(__AVR_ATtiny24__)||defined(__AVR_ATtiny44__) || defined(__AVR_ATtiny84__) || defined(__AVR_ATtiny24A__)||defined(__AVR_ATtiny44A__) || defined(__AVR_ATtiny84A__) @@ -82,6 +82,26 @@ ISR(WDT_vect) { } +int testSW(void) { + uint8_t r; + DDRB&=~(1<0) { + if ((gcontrol==2)||(gcontrol==3)) { + wdcounter=3; + gcontrol=0; + + } + + if (wdcounter>2) { //PORTB|=(1<1000) humidityRH=1000; + if (testSW()) { + am2302_hum= humidityRH*10.0; + am2302_temp=temperatureC*25.6; + // + config_info2[5]=8; + + }else{ + + double hhum=(1.0546-0.000216*temperatureC)*(humidityRH); + //am2302_hum=0.318*hhum +76.0; + am2302_hum=0.31*hhum +80; + am2302_temp=temperatureC*25.6; + //am2302_temp=am2302_temp-45; + config_info2[5]=7; + } wdcounter=0; } if (gcontrol==1) { + gcontrol=0; l=MAX44009getlux(max_adr); if (l<0.030) l=0.030; //Darf nicht 0 sein. minimum -35°C Sensor minimum 0.045 //double l=1000; @@ -212,10 +255,7 @@ int main(void){ sei(); EXTERN_SLEEP(); } - if ((gcontrol==2)||(gcontrol==3)) { - gcontrol=0; - - } + #if defined(__AVR_ATtiny25__)||defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__)