\ 2006-07-23 EW adv2_4.fs rom include adv2_timeup.fs include adv2_lcd.fs \ --- i2c rtc --- 0 Constant PinSCL 1 Constant PinSDA port1 Constant PortI2C $E3 Constant PddrI2C $9e Constant i2c_addr_lm75 $a0 Constant i2c_addr_rtc include adv2_i2c.fs include adv2_i2c_rtc.fs include adv2_i2c_lm75.fs : led0 ( -- ) 3 port1 bclr ; : led1 ( -- ) 3 port1 bset ; : job.tick tick @ $01 and IF led0 ELSE led1 ENDIF 1 0 lcdpos show.T ; : job.sec timer @ dup lastsec @ - swap dup lastsec ! sec @ min @ hour @ day @ month @ year @ cr . . . . . . . . 0 13 lcdpos sec @ p2! lcdtype ; : job.min cr ." running minute job ..." 0 0 lcdpos show.DT ; : job.hour cr ." running hour job ..." ; : job.day cr ." running day job ..." ; : job.month cr ." running month job ..." ; : job.year cr ." running year job ..." ; : run cr ." year month day hour min sec timer" ." timer-lastsec" timer @ newtimer ! clock-init lcdpage show.DT BEGIN tickover? IF timeup ENDIF tickflag @ IF job.tick 0 tickflag ! ELSE secflag @ IF job.sec 0 secflag ! ELSE minflag @ IF job.min 0 minflag ! ELSE hourflag @ IF job.hour 0 hourflag ! ELSE dayflag @ IF job.day 0 dayflag ! ELSE monthflag @ IF job.month 0 monthflag ! ELSE yearflag @ IF job.year 0 yearflag ! ENDIF ENDIF ENDIF ENDIF ENDIF ENDIF ENDIF key? UNTIL ; ram