EEh, ko me vukao za jezik ![Smile Smile](https://forum.yu3ma.net/images/smilies/smile.gif)
Vidi, - Arduino odnosno Atmel ne poznajem, jer radim samo sa PIC-om.
U principu je potpuno ista stvar u pitanju.
EEProm moraš imati ( bilo u samom MCU , bilo eksterni )
ATmega328 ima interni EEprom.
Program izgleda ovako:
Pre main loop proverava se broj upisanih u EEpromu (koliko je radio PLC) i poredi sa nekom zadatom vrednosti.
Ako je manji od toga ide se main loop.
A ako nije onda, prvo na test za UNLOCK pa onda na poruku upozorenja na LCD i tu u neku bezkonačnu petlju.
Kada prvi put udješ u UNLOCK (ubacivanjem tog otpornika) tada trajno onemogući dalju proveru broja radnih sati !
Ako je sve OK, kroz main loop periodično (recimo na svakih 60 sekundi) prozivaš potprogram za broj radnih sati
i uvećavaš jednu varijablu "minuti" sve do 59 a zatim dobijaš stanje varijable "sati" koju odmah upisuješ u EEprom.
Na ovaj način ako je PLC radio recimo 50 min pa je ugašen, broj radnih sati neće biti promenjen u EEpromu
već samo broj "isteklih radnih sati".
Ili radi upis posle svakog "radnog minuta" sa 16 bitnom varijablom to dodje na max. 1092 radna sata što je i više nego dovoljno
Ako ideš na upis radnih sati onda možeš koristiti i 8 bitnu varijablu jer je 255 radnih sati sasvim korektan period za čekanje naplate![Smile Smile](https://forum.yu3ma.net/images/smilies/smile.gif)
I to je TO
Pozz
![Smile Smile](https://forum.yu3ma.net/images/smilies/smile.gif)
Vidi, - Arduino odnosno Atmel ne poznajem, jer radim samo sa PIC-om.
U principu je potpuno ista stvar u pitanju.
EEProm moraš imati ( bilo u samom MCU , bilo eksterni )
ATmega328 ima interni EEprom.
Program izgleda ovako:
Pre main loop proverava se broj upisanih u EEpromu (koliko je radio PLC) i poredi sa nekom zadatom vrednosti.
Ako je manji od toga ide se main loop.
A ako nije onda, prvo na test za UNLOCK pa onda na poruku upozorenja na LCD i tu u neku bezkonačnu petlju.
Kada prvi put udješ u UNLOCK (ubacivanjem tog otpornika) tada trajno onemogući dalju proveru broja radnih sati !
Ako je sve OK, kroz main loop periodično (recimo na svakih 60 sekundi) prozivaš potprogram za broj radnih sati
i uvećavaš jednu varijablu "minuti" sve do 59 a zatim dobijaš stanje varijable "sati" koju odmah upisuješ u EEprom.
Na ovaj način ako je PLC radio recimo 50 min pa je ugašen, broj radnih sati neće biti promenjen u EEpromu
već samo broj "isteklih radnih sati".
Ili radi upis posle svakog "radnog minuta" sa 16 bitnom varijablom to dodje na max. 1092 radna sata što je i više nego dovoljno
Ako ideš na upis radnih sati onda možeš koristiti i 8 bitnu varijablu jer je 255 radnih sati sasvim korektan period za čekanje naplate
![Smile Smile](https://forum.yu3ma.net/images/smilies/smile.gif)
I to je TO
Pozz