Ich hab's ja schon oft gesagt: ich persönlich mag die Digisparks: http://shop.cboden.de/Digispark/Digi...ngs-Board.html
dazu kommt dann noch ein RTC-Shield: http://shop.cboden.de/Digispark/Shie...rungssatz.html
und ggf. ein I/O-Expander, falls Du mehr Kanäle schalten willst: http://shop.cboden.de/Digispark/Shie...rungssatz.html
und natürlich noch eine Treiberstufe abhängig von der Last, die Du schalten willst. Da können wir Dir aber gerne Tipps geben, sobald Du uns verrätst, was angesteuert werden soll.
In der Arduino-IDE des Digispark sind schon ein paar Beispiele für die Ansteuerung der RTC drin. Alternativ kannst Du Dir einen ersten Überblick auch im Digistump-Wiki verschaffen: http://digistump.com/wiki/digispark/tutorials/rtc Da die Code-Beispiele sehr kurz sind, siehst Du schon, dass es eigentlich ganz einfach ist: zunächst die richtige Bibliothek einbinden und eine Objekt-Variable anlegen:
Code:
#include <TinyRTClib.h>
RTC_DS1307 RTC;
Dann in der Setup-Routine die RTC starten und mit aktuellem Datum und Uhrzeit "stellen" (entfällt natürlich, wenn schon einmal gemacht):
Code:
RTC.begin();
if (! RTC.isrunning()) {
// following line sets the RTC to the date & time this sketch was compiled only for the first run
RTC.adjust(DateTime(__DATE__, __TIME__));
}
und im einfachsten Fall - wie von RoboHolIC geschrieben - in der Main-Loop regelmäßig die Uhr auslesen
Code:
DateTime now = RTC.now();
Dann kannst Du an Hand des ausgelesenen Wertes ermitteln, was zu tun ist. Im ersten Wiki-Beispiel wird der Datumswert zerlegt und auf einem LCD ausgegeben. Genauso gut kannst Du die Teilinformationen nutzen um Deine Ausgänge zu schalten.
Die Jungs vom deutschen Shop sind eigentlich sehr hilfsbereit. Wenn Du denen ne Email schickst, beraten Sie Dich ggf. auch.
Lesezeichen