Nun schaut es gut aus Die Steuerung lief schon einige Zeit ganz ordentlich mit allen LED's. Allerdings brach die I2C Verbindung immer ab, wenn ich mit 1000kHz takten wollte. Die Lösung hierfür war der Austausch der bei beiden 10KOhm Pullup Widerstände (R7 und R8, SDA, SCL) durch 1,5KOhm. Nun kann ich bei 1080 rpm (18 Umdrehungen pro Sekunde) 96 Zeichen in drei Ebenen darstellen und dazu noch eine Analoguhr ganz innen. Vermutlich gingen nun auch noch mehr rpm, der aktuelle Motor gibt aber nicht mehr her. Der I2C Bus lässt sich nun mit 1000kHz (TWBR=2) betreiben.
Die Idee mit dem Hintergrundpuffer von quinze ist sehr gut, die einzelnen Spalten werden nun in der "freien" Zeit vorberechnet und dann beim erreichen der nächsten Spalte dargestellt.
Für die Ansteuerung der Spule, des Motors und der Datenübertragung kommt ein ESP32 zum Einsatz. Auf dem läuft auch ein Webserver, über den man die Motorgeschwindigkeit und die darzustellenden Texte eingeben kann. Die Uhrzeit wird über WLAN empfangen und an die Propellerclock gesendet beim Start, intern läuft dort dann eine Uhr mit. Der Mega168 läuft arbeitslos einfach mit, alles ist auf dem 644er implementiert. Somit läuft das ganze nun autark vom PC.
Lesezeichen