das hab ich woll nicht ganz erklärt 
der 'timer bzw. countdown, uhr' ist im mainloop, da steht
Code:
if pina.1 = 0 then
porta.0 = 1 'beliechtungsgerät
wait t
porta.0 = 0
cls
locate 1 , 1
lcd "Belichtung beendet!"
wait 1
cls
else
locate 1 , 1
lcd "Bitte Starten Sie das Programm zum belichten!!"
endif
das if pina.1 = 0 then schaltet (wenn pina.1 auf gnd gezogen wird) die beleuchtung ein (diese hängt an porta.0). dann wird t secunden lang gewartet, um dann die beleuchtung wieder auszuschalten. t wird in den zwei routinen der interrupts verändert.
das ganze ist allerdings nicht sooo genau (bei insgesamt 10 minuten beleuchtungsdauer gibt es etwa eine abweichung von einer halben minute). wenn du es genauer haben willst, dann schreib ich dir morgen noch mal was anderes, aber jetzt muss ich jetzt dann pennen, morgen hab ich schule
nochwas:
in den routinen von int0 und int1 steht
t = t + 1
bzw.
t = t - 1
da muss stehen:
t = t + 30
bwz.
t = t - 30
damit kann man die zeit im halbe minuten schritt verändern. ich hoffe, das reicht dir, kann man aber ganz leicht ändern.
gruß
chris
Lesezeichen