4MHz - Some New double Double Devices
[owSlave2.git] / DS18B20_VOC_DS2438_SHT / DS18B20_DS2438.c
index a85c988..3726641 100644 (file)
@@ -269,7 +269,7 @@ int main(void){
        }\r
 \r
        if (testSW()) {\r
-               config_info2[5]=8;\r
+               config_info2[5]=12;\r
        }else{\r
                config_info2[5]=7;\r
        }\r
@@ -285,13 +285,13 @@ int main(void){
        sei();\r
        //DDRB|=(1<<PINB1);\r
     while(1)   {\r
-               if (pack1.config==0x1F) {\r
+               if (pack1.config==0x1F) {  //Reset R0\r
                        pack1.config=0x7F;\r
                        R0=1;\r
                        pack2.R0=0;\r
                        writeEEPROM(EEPROM_R0,0);\r
                } \r
-               if (pack1.config==0x05) {\r
+               if (pack1.config==0x05) {  //Reset all Data\r
                        pack1.config=0x7F;                              \r
                        pack2.r_day_max=1;\r
                        pack2.r_week_max=1;\r
@@ -306,7 +306,7 @@ int main(void){
                                weekmaxarr[i]=1;\r
                        }                               \r
                } \r
-               if (wdcounter>0) {\r
+               if (wdcounter>0) {  //8s\r
                        pack2.tol_s8++;\r
                        if (pack2.tol_s8>(10000))  {//10800 ist theortisch der Tag aber meistens zu lang\r
                                pack2.tol_s8=0;\r
@@ -337,15 +337,13 @@ int main(void){
                        ip=interp(temperatureC,humidityRH);\r
                        pack2.ip=ip*1000;\r
                        double RH=calibr_hum(temperatureC,-0.2,humidityRH)*10.0;\r
-                       //humidityRH=humidityRH*10.0;\r
                        double TC =temperatureC *10.0-2;\r
 \r
 \r
                        if (testSW()) {\r
-                                am2302_hum=RH*10.0;\r
+                                am2302_hum=RH;\r
                                 am2302_temp=TC*25.6;\r
-                                //am2302_temp=am2302_temp-45;\r
-                                config_info2[5]=8;     \r
+                                config_info2[5]=12;    //10V = 100%\r
                        }else{\r
                                hhum=(1.0546-0.000216*TC)*(RH);\r
                                //am2302_hum=0.318*hhum +76.0;\r
@@ -353,7 +351,6 @@ int main(void){
                                am2302_temp=TC*25.6;\r
                                config_info2[5]=7;\r
                        }\r
-                       //PORTB&=~(1<<PINB1);\r
                        mr=0;\r
 //Kritische Sektion !___Ein Breakpoint in dieser Section kann den TGS8100 zerstoeren!___________________________\r
                        PORTB&=~(1<<PINB1); //Auf 0 Ziehen\r
@@ -404,7 +401,8 @@ int main(void){
                                        pack2.r_day_max=l*100;\r
                                }\r
                        } else if (l<R0) l=R0; //negative Werte am Anfang verhintern\r
-                       l=exp((1-(l/R0))*6.05);// exp((1-($val)/55)*5.75);  (5.75 geht über 125 6.05 geht bis 240... mittlere Linie im Datenblatt)\r
+                       l=exp((1-(l/R0))*6.05)-1;// exp((1-($val)/55)*5.75);  (5.75 geht über 125 6.05 geht bis 240... mittlere Linie im Datenblatt)\r
+                       //l=(l/R0*100.0);\r
                        l=l*8; //fuer DS18B20\r
                        wdcounter=0;\r
                        \r