Save last set temperature.
authorFredrik Tolf <fredrik@dolda2000.com>
Thu, 5 Jul 2007 01:24:34 +0000 (01:24 +0000)
committerFredrik Tolf <fredrik@dolda2000.com>
Thu, 5 Jul 2007 01:24:34 +0000 (01:24 +0000)
kokare.c

index b81842e..0170237 100644 (file)
--- a/kokare.c
+++ b/kokare.c
@@ -1,5 +1,6 @@
 #include <avr/io.h>
 #include <avr/interrupt.h>
+#include <avr/eeprom.h>
 #include <inttypes.h>
 #include <math.h>
 
@@ -266,13 +267,21 @@ int main(void)
     int state, cur, run, rstate, delta;
     unsigned long utime;
     
-    state = 0;
-    cur = 100;
+    state = 1;
+    cur = eeprom_read_byte(0);
+    if(cur < 0)
+       cur = 0;
+    if(cur > 100)
+       cur = 100;
     run = 0;
     rstate = 0;
+    utime = getticks();
     init();
     sei();
-    display(0, 0, 0);
+    if(cur < 100)
+       display(cur, 0, 0);
+    else
+       dsp[0] = dsp[1] = SEGG;
 
     while(1) {
        mnow = getticks();
@@ -321,8 +330,10 @@ int main(void)
                }
                utime = mnow;
            }
-           if(mnow - utime > 1000000)
+           if(mnow - utime > 2000000) {
                state = 0;
+               eeprom_write_byte(0, cur);
+           }
            if(sstate == 2) {
                run = !run;
                sstate = 0;