damit ihr was zum basteln und testen habt :
Code: Alles auswählen
/* ------------------- Bitte den Header nicht verändern -------------------
* 1.0 by Initial by Dirk Wesenberg (DeWe)
* www.kopterforum.at
*
* this file following the GNU license
* GNU GENERAL PUBLIC LICENSE Version 2, June 1991
* https://github.com/arduino/Arduino/blob/master/license.txt
*
* Lost_Finder
* in der Initial Version sind folgende Feature enthalten
*
* beim Start sagt der Buzzer die aktuell eingestellten Minuten an, wobei
* ein langer Ton 5 Min und
* ein kurzer Ton 1 Min bedeutet ( 3* lang und 3* kurz = 3*5 + 3 = 18 Min
* die gewünschte Zeit wird im EEProm gespeichert
*
* Timer-Mode
* Nach Ablauf des gesetzen Timers wird der Pin Ausgang mit dem Buzzer auf High gesetzt
* während der Timer läuft blinkt die LED im Sekundentakt ( Timer Mode )
* im Alarm-Zustand werden keine Tasten mehr angenommen (Sicherheitsaspekt)
* wird die Taste im Timer-Mode kurz gedrückt ( bis zu einer Sekunde ) wird der Timer von z.B. 18 Min. zurückgesetzt
* wird die Taste im Timer-Mode lange gedrückt (2-5 Sekunden) kommt man in den Programmier Mode
*
* Programmier Mode
* im Programmier Mode blinkt die LED schneller
* jeder kurze Tastendruck erhöht die Zeit um eine Minute
* reicht die Standart max. Zeit von 30 Min nicht aus, kann die max. Zeit bei
* >>> "uint8_t cust_max = 30;" zum Beispiel auf 60 erhöht werden "uint8_t cust_max = 60;"
* wird innerhalb 2 Sekunden die Taste nicht betätigt, wird die momentan gültige Zeit via Buzzer vorgespielt
* wird die Taste im Programmier-Mode lange gedrückt (2-5 Sekunden) kommt man zurück in den Timer-Mode
* die neue Zeit wird im EEPRom gespeichert und beim nächsten Start wieder abgerufen
* wird der Programm-Mode nicht via langem Tastendruck beendet, kommt es zu einem Timeout
* auch hier wird die neue Zeit abgespeichert, der neue Timer neu gestartet
*
* Alarm Mode
* im Moment wird ein aktiver Buzzer dauerhaft angesteuert (todo Art Morse-Zeichen zw. längerer Laufzeit)
* die LED wird abgeschalten
* Tastendrücke werden sicherheitshalber ignoriert.
*/
Nach loslassen des Tasters, kommt ein kleiner Quittungston [ob die Taste gültig erkannt worden ist]
* wird innerhalb 2 Sekunden die Taste nicht betätigt, wird die momentan gültige Zeit via Buzzer vorgespielt
ist nun 1Sekunde ..reicht ...