Hallo, Also, ich habe jetz viel rumgesucht und ein paar Anhaltspunkte gefunden zu meinem Problem, aber so richtig schlau bin ich noch nicht geworden, darum jetzt eine Direkte Anfrage:
Ich möchte eine Uhr herstellen, die auf 6 roten 7-Segment-Led-Anzeigen die Uhrzeit im Format hh:mm:ss ausgibt.
Dazu brauche ich einen Microcontroller, weil es Chips die nur für Uhren gemacht sind nicht mehr gibt, soviel habe ich begriffen. Aber welchen Microcontroller soll man da nehmen? Sollte möglichst einfach zu programmieren sein, möglichst wenig strom verbrauchen und klein sollte er auch sein.
Dieser Microcontroller wird dann wohl ein Signal an eine Einheit senden, die die 7-segment Anzeige steuert, oder? Was gibt es da für Möglichkeiten, das einigermassen elegant zu machen?
Wie verbinde ich die 7-Segment Anzeigen, damit ich nicht einen Chip mit 42 Output Pins benötige?
Wäre froh um einfache klare Hinweise, da ein bisschen blöd auf der elektronik-abteilung-der-gross-hirn-rinde. ok, danke im voraus
Am 29 Apr 2004 10:08:14 -0700, schrieb snipped-for-privacy@bluewin.ch (matthias rohrbach):
Mawin ist gerade nicht da, um mich zu Schlachten, daher gebe ich Dir folgenden Tip:
Nimm eine M-unit aus dem C-control-System von Conrad. Das komplette Programm für eine Funkuhr ist bereits drin. Lade Dir unter:
formatting link
den Schaltplan für das LED-Display herunter und baue das Display in der von Dir gewünschten Größe nach. Das ist dann eine 6-stellige Anzeige mit serieller Ansteuerung.
Der Rest ist ein simples Basic-Programm.
Der Empfangsbaustein für das DCF-Signal kostet ca. 10¤, die Unit ~25¤, die Kosten für das Display hängen von der Größe und dem Inhalt Deiner Bastelkiste ab. Die gesamte Software ist kostenlos downloadbar.
Man könnte sie im Prinzip auch aus einzelnen (TTL-)Logikchips aufbauen. Früher (so vor 10-20 Jahren) hat man auch noch ab und zu in den Bastler-Zeitschriften solche Schaltungen gefunden, aber dazu braucht man ein recht viele Chips (muß aber nichts programmieren).
Ein Microcontroller ist hier aber auf jedenfall die bessere Wahl.
Wie klein? Kannst Du SMD löten? Und das mit dem Stromverbrauch ist auch relativ, weil die Anzeige ja relativ viel Strom braucht. Wenn Dir der Stromverbrauch wichtig ist, dann mußt Du LCDs verwenden.
Es gibt viele Microcontroller, die Deine Anforderungen erfüllen, ich würde hier den AVR ATMega8 empfehlen.
Man multiplext, d.h. man schaltet alle Digits parallel, gibt aber immer nur auf einen einzige Stelle Strom (dem gemeinsamen Anschluß). Dadurch kommt man mit Digits+Stellen (7+6=13) Anschlüssen aus.
Außerdem könntest Du google befragen. Suchbegriffe: microcontroller digital clock
Um gleich eines vorwegzunehmen: es geht auch ohne Microcontroller. Ich habe das vor ein paar Jahren mal so gemacht:
formatting link
Jeder Radiowecker hat einen drin. Allerdings normalerweise ohne Sekundenanzeige.
Da es bei der Verwendung von Siebensegmentanzeigen nicht wirklich auf die Stromaufnahme ankommt (worst case: 08:08:08 + 2 dps = 41*0.01A =
410mA, da stören 5mA für den Controller keinen mehr), kann ich dir die Atmel AVR empfehlen (mit PICs habe ich nie gearbeitet, möglicherweise eignen die sich genauso).
Entweder Schieberegister verwenden (statische Ansteuerung) oder multiplexen (Segmente parallel schalten, gem. Anschluss jeder Anzeige seperat geschaltet, die Anzeigen leuchten ganz schnell nacheinander auf). Nachteil beim Multiplexen ist das Problem des Stromes (bei 6 Anzeigen ist der 6fache Strom für die gleiche Helligkeit notwending, nicht alle Anzeigen halten das problemlos aus, und wenn der Controller sich mal aufhängt und eine Anzeige dauerleuchtet, wird sie gebraten).
Multiplexen braucht 7 Segmentausgänge und 6 Ausgänge für die gemeinsamen Anschlüsse der Anzeigen, also 13 (die dps, die immer leuchten sollen, hängst du einfach direkt an die jeweilige Spannung, die anderen lässt du offen. Am AT90S2313 sind 15 I/O Ports vorhanden, so dass du noch genug Platz für die Taster zum Stellen und einen DCF-Empfänger hast (wenn du die Taster auch multiplext, also die Taster mit einem Kontakt an je einen der Ausgänge für die Anzeigen anschließt und die anderen Kontakte alle verbindest und auf einen Eingang gibst [Dioden nicht vergessen!]). Mit Schieberegistern brauchst du 2 oder 3 (bei Schieberegistern mit Latch, für die Idee mit der C-Control brauchst du unbedingt solche!) Ausgänge. Also wären hier genug Eingänge für Taster und DCF frei. Noch ein Tipp für die Auswahl: Multiplexen hört sich zwar nach weniger Hardwareaufwand an, wenn du aber keine geätzte Platine verwendest, dann kann es sehr zeitraubend und fummelig sein, die Segmentanschlüsse der dicht aneinanderstehenden Anzeigen zu verbinden. Außerdem kann es bei der Ansteuerung über Schieberegister nicht passieren, dass die Anzeige beim Vorbeigehen etc. als flimmernd wargenommen wird.
Wenn du eine stromsparende Uhr suchst, dann musst du ein LCD verwenden, wie schon gesagt. Einen passenden Schaltplan ohne stromfressenden Microcontroller findest du auf
formatting link
(wobei du die Decoder für die Sekundenanzeige noch ergänzen müsstest, aber finde erst mal ein 6stelliges LCD!).
Bitte noch beachten: der angegebene Server ist abends immer etwas langsam, also entweder Geduld mitbringen oder die Seiten erst morgen früh ansehen.
So viel Strom brauchen moderne MCs nun auch wieder nicht. Ein normaler ATMega8L braucht bei 2,7V und 32kHz Takt ca. 60mA, mit Stromsparmodi sogar nur 14µA. Ein MSP430 kommt bei 2,2V und 4kHz Takt sogar auf 1,3µA
Gleich das AVR Butterfly mit 100 Digit-Display verwenden. ;-)
Microchip hat eine Application-Note (AN590) für seine Pic contoller mit einer Uhr geschrieben. Da ist ein Schaltplan und die Software dabei. Allerdings würde ich die Umstellung auf den Pic 16F84A empfehlen, da bekommst Du Programmiergeräte fast schon an jeder Strassenecke, ausserdem wird's Billiger, willst Du mal die Software Modifizieren.
Hallo Matthias, es gibt diese Chips schon noch, allerdings nur eingebaut in einem fertigen Wecker, und das für weniger als 10 EUR. Wenn Du nicht ganz besondere Zusatzforderungen hast, würde ich einen solchen Wecker kaufen, Gehäuse und möglicherweise Anzeige entfernen, und dann die Uhr nach eigenen Designvorstellungen umbauen. Gruss Harald
Bei 32KHz ist das was anderes, aber die Microcontroller werden normalerweise auch mit Frequenzen im MHz-Bereich betrieben und sind oft nicht für 32KHz vorgesehen.
Ist aber teurer und nicht so schön (vor allem ist das Display kleiner und die "Schrift" sieht nocht so gut aus). Aber hauptsächlich ging es mir bei dem Projekt darum, nichts programmierbares in der Schaltung zu haben.
Vielen Dank, das ist genau was ich gesucht habe, ich denke nun müsste es klappen. Weiss jemand einen guten Versand von Elektrobauteilen für die Schweiz? Danke an alle!! LG Matthias
Stichwort: Multiplex: 13 Portleitungen des AVR, 6 um die Ziffer auszuwählen, 7 für die Darstellugn der Ziffer. ALternativ kannst Du auch ein Schieberegister verwenden. Der alte AVR 90S4333 oder sein Mega-Nachfolger hat alles was Du brauchst.
Ich habe so etwas mal realisiert. Dann hatte ich die LED-Anzeige mittels Treiber auf Nixieröhren umgebaut und bin an die Grenzen des 4333 gekommen. Die Entladevorgänge in den Nixies haben so in den AVR gestört, daß nichts mehr funktionierte. Seitdem liegt das Projekt auf dem Breadboard in der Ecke :-(
Noch ein Tip: Mach Dir vorher Gedanken über den richtigen Quartz. Ich habe in einem Anfall geistiger Umnachtung einen 4 MHz-Oszillator gekauft. Den Takt auf genaue Sekunden im Timer herunterzuzählen ist schwieriger, als wenn man gleich eine passende Frequenz nimmt. (Danach wusste ich auch, warum Zeitsteuerungen immer so "merkwürdig krumme" Taktfrequenzen haben :-)
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.