Ein kleines Beispiel und eine kleine Spielerei, um ein 14x5, 2x 5x7, LED-DOT-Matrix-Display, TA07-11SRWA, mit einem ATmega8 im Multiplexverfahren anzusteuern. Die Windstärke, also die Impulse pro Sekunde (Frequenz) am Eingang wird in Anbhängigkeit der Zeit angezeigt, der ADC wäre mit etwas Programmieraufwand auch nutzbar. Der 32kHz getaktete 8Bit Timer2 arbeitet im Asyncronmodus (ASSR), dadurch beträgt die Stromaufnahme im 1 Sekunden "Blinkbetrieb" nur ca. 200µA, geeignet für Batteriebetrieb. Im Beispiel ist der "Dauerbetrieb" aktiviert. Für Blinkbetrieb einfach das "REM" in der "LED_BLINKEN:" entfernen. Nach 1ms erzeugt der Timer2 ein Interrupt, dieser steuert die interne Uhr, sowie MUX und startet die LOOP-Schleife, dann schläft der µC wieder ein, bis zum nächsten Interruptaufruf. Erstaunlicherweise, ich wundere mich heute noch, ist die Stromaufnahme bei 2MHz interner RC-Takt am geringsten und nicht bei 1MHz. Der interne RC-Takt kann 1, 2, 4 oder 8MHz betragen, die Taktfrequenz spielt bei der Programmabarbeitung keine Rolle, nur beim ADC etwas aufpassen. Kurzzeitig, für 1ms, schaltet der AVR seine Ausgänge auf Eingänge um, aktiviert die Pull-Up-Widerstände und fragt die Taste(n) ab. Nach jeder Stunde speichert der ATmega vorsichtshalber seine Messergebnisse im EEPROM ab. Menue: - Diagramm 1h pro Spalte - Diagramm 3h pro Spalte - Diagramm 6h pro Spalte - Diagramm 12h pro Spalte - Diagramm 24h pro Spalte - Betriebsspannung - Frequenz am Einang Einen kleinen 4x7 Zeichensatz habe ich mit erstellt, lässt sich wunderschön in der Tabelle per Hand editieren und bei Bedarf anpassen. Die Betriebsspannung... https://www.mikrocontroller.net/attachment/473002/A.jpg Die Referenz auf Betriebsspannung, VBG aktivieren, ADC-Messung und etwas rechnen, die nervige Umrechnerei wurde durch eine Tabelle gelöst^^ Vor einigen Stunden frischte der Wind doch mal etwas auf: https://www.mikrocontroller.net/attachment/473003/B.jpg Anmerkung: Die Matrix kann, bei diesem Zeichensatz, bis maximal 3 ASCII Zeichen darstellen. Für Hinweise und konstruktive Kritik bin ich sehr dankbar. Bernhard
:
Bearbeitet durch User
Man sieht an A.jpg natürlich an der unterschiedlichen Helligkeit der Pixel deutlich, dass der ATmega mit 14-fach Multiplex drastisch überfordert ist und den Strom ohne Verstärkung durch Transistoren nicht liefern kann. Mit 14 Widerständen statt 5 wäre bei gleicher Pinanzahl das Multiplexverhältnis mit 1:5 besser, aber auch dann sollte man Transistoren für 50mA/700mA nutzen.
> an der unterschiedlichen Helligkeit der Pixel deutlich...
Sorry, die Fotos hätten besser sein können.
Hier ein erneuter Versuch mit Bild und Video, in Farbe und Bunt,
bei 3V Betriebsspannung, mit bloßem Auge nichts erkennbar ;-)
:
Bearbeitet durch User
..der Prototyp im Binkbetrieb, geschätzte Batterielebensdauer größer 1Jahr. Im Video blinkt nur ein Punkt, das Lebenslicht, die letzten 14h war es windstill...
:
Bearbeitet durch User
Bemerkung zum mesz-genaugkeit. Aufgepasst mit diese art von windgeber. Wie du auf dem impulse.png von deinen anderen thread sehen kannst, ist der impuls-ausgang nicht symetrisch. Eine viel groszere genaugigkeit bekommst du durch die haelfte der Pulsen weg zu lassen aus die messung. Ursache ist wahrscheinlich das der magnet oder magnetschalter im rotor nicht ganz im mitten positioniert ist.
> ist der impuls-ausgang nicht symetrisch Das ist zweifelsohne korrekt, das Tastverhältnis muss auch nicht exakt 50% betragen, denn das Eingangssignal wird 1000 Mal pro Sekunde abgetastet, also jede ms. Wenn ein high/low Wechsel in dieser Zeitspanne erfolgt, werden alle Impulse zuverlässig erkannt und somit die Frequenz korrekt gemessen. Übrigens, bei 100 km/h Windgeschwindigkeit liegt bei diesem Modell eine Frequenz von nur 160Hz an.... da lanweilt sich der µC noch ^^ Nachtrag: Dieses kleine Projekt ist auf extrem Stromsparen ausgelegt, die Batterien sollen lange halten. https://www.mikrocontroller.net/attachment/473751/IMG_2679.JPG Meine bessere Hälfte litt sehr bei der Windmesserehzahl-Geschwindigkeitsmessung, 100km/h und offenes Autofenster... ;-)
:
Bearbeitet durch User
Bernhard S. schrieb: > Dieses kleine Projekt ist auf extrem Stromsparen ausgelegt, die > Batterien sollen lange halten Wieso dann LED und gar noch als Matrix mit Schummerlicht ? Ein 3-stelliges LCD kann doch auch Zahlen anzeigen und kostet quasi 0 Strom. Das zeigt doch nur, dass du dich mit LCD nicht auskennst und deren Benutzung scheust. Jeder kleine Chinese beherrscht es aber und liefert Uhren, Thermometer, Taschenrechner die über ein Jahr lang auf Batterie arbeiten. Es ist also dringendst Zeit es zu lernen. https://dse-faq.elektronik-kompendium.de/dse-faq.htm#F.11
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.