Hallo zusammen,
meine Propclock funktioniert!
Es ist zwar eine Heissleim-Sekundenkleber-McGyver-Lösung, aber sie funktioniert....
Ich betreibe 8 Leds direkt am AVR (hat Nachteile, ich kann sie nicht gross bestromen, muss sie daher etwas länger leuchten lassen, das ergibt etwas breite Zahlen, aber es geht)
Die Synchronisation zwischen Drehzahl und Anzeige realisiere ich über eine kleine Gabellichtschranke, die mitdreht und durch einen Draht rauscht. Über Schleifer schicke ich 15V in einen 680müF Elko, an dem ein 7805er hängt, der mir den Mega mit Saft versorgt.
Ich habe momentan einen Timer am Laufen. (Timer0) Wenn er überläuft, wird die nächste Spalte "angeleuchtet".
Wenn er 4 mal übergelaufen ist (so breit ist die Zahl 1), stellt er den Timer und die Leds ab. Wenn der Interrupt 0 (da hängt die Lichtschranke) reinkommt, dann wirft er den voreingestellten Timer 0 an, geht wieder an den Anfang der Zahl 1 im Array und übergibt die Kontrolle wieder dem Timer1.
So krieg ich momentan eine schöne Zahl dargestellt.
Eine Anpassung des Timer0 über die Drehzahl (damit die Zahlen immer gleich breit sind) werde ich nicht machen, da ich konstant drehen lasse und sowieso jetzt schon recht langsam drehe, schneller ist nicht möglich, sonst hauts mir wahrscheinlich den Aufbau um die Ohren, aber so gehts gut, die Zahlen flackern nur schwach.
Jetzt möchte ich aber eine Uhr bauen. Mein momentan nicht aktives Hauptprogramm ist noch frei, sowie zwei Timer.
Wie mache ich das? Das kann ich doch irgendwie auch nicht mit einem Timerinterrupt, der mit 1Hz kommt machen, da das sonst doch ein Chaos mit den anderen beiden Interrupts gibt...
Wie könnte man das lösen? Wie berechne ich die Zeit-Zahlen, um sie anzuzeigen? (Anzeigen tu ich in der Timer0-Interruptroutine)
Lesezeichen