Med en encoder ställer man in tiden för nedräkningen.
Encodern ökar/minskar värdet i data1. Detta motsvarar antalet sekunder man ställer in. Sedan tänkte jag använda följande lilla kod för att omvandla till minuter och sekunder (för att det ser snyggare ut på displayen än att bara visa sekunder) :
Kod: Markera allt
if data1 >= 60 then
starttid_m = starttid_m + 1
data1 = data1 - 60
else
starttid_s = data1
end if
Detta sker alltså för varje gång som värdet i variabeln data1 ändras.
Problemet är bara att koden uppenbarligen bara fungerar när man vrider encodern medsols, dvs ökar tiden. Hur löser man detta? Jag skulle ju behöva minska variabeln starttid_m , men kan inte komma på hur if-raden ovan ska se ut. Eller finns det någon helt annan lösning som jag missat?