PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hilfe!!! Atmel-Wecker! DRINGEN!!



darkzone666
12.12.2011, 20:35
Hallo, ich habe ein kleines Problem. Ich würde gern den Wecker von Scott-Falk Hühn nachbauen, jedoch würde ich diesen gerne leicht modifizieren. Und zwar würde ich gerne 12cm große 7-Segmentanzeigen ( Vcc = 7,5V) verwenden, Alarm 1 soll über den Summer laufen, Alarm 2 über den noch hinzuzufügenden Radio. Dann würde ich gerne 2 LED (http://www.mikrocontroller.net/articles/LED)´s anbringen um zusehen ob Al1 / Al2 eingeschaltet ist und zu guter letzt wollte ich noch einen Radiosleeptimer ( 15/30/45 min) hinzufügen. Das Alarm1 -> Summer, Alarm2 -> Radio, LED (http://www.mikrocontroller.net/articles/LED)s -> Alarm und der Sleeptimer sind ja reine Programmierarbeit, sehe ich das so richtig?
Ich habe mal einen Schaltplan erstellt, ist das alles so richtig? Ist der SAA1064 richtig angeschlossen?

Wie mach ich das mit der Adressierung??:confused:

wkrug
13.12.2011, 02:39
Wenn Du das so machen willst wie in deinem PDF musst Du auf jeden Fall den Quellcode umschreiben, da ja die I²C Schnittstelle genutzt wird.

Warum schaltest Du den Ausgängen nicht einfach einen ULN2803 Treiber für jedes Segment nach und verbindest die Anoden deiner Anzeige mit einer höheren Spannung ?

Dann sollte sich der Quellcode direkt übernehmen lassen, ausser den Zusatzfunktionen dir Du haben möchtest.

Hubert.G
13.12.2011, 10:39
Müssen es gleich so viele Threads sein?
https://www.roboternetz.de/community/threads/55862-Gro%C3%9Fanzeigewecker!-Br%C3%A4auchte-Hilfe!
http://www.mikrocontroller.net/topic/241351#new

darkzone666
20.12.2011, 19:45
Wenn Du das so machen willst wie in deinem PDF musst Du auf jeden Fall den Quellcode umschreiben, da ja die I²C Schnittstelle genutzt wird.

Warum schaltest Du den Ausgängen nicht einfach einen ULN2803 Treiber für jedes Segment nach und verbindest die Anoden deiner Anzeige mit einer höheren Spannung ?

Dann sollte sich der Quellcode direkt übernehmen lassen, ausser den Zusatzfunktionen dir Du haben möchtest.

Okay das wäre auch nicht schlecht. aber wie schließ ich das ganze dann an? ich bräuchte ja mindestens 3 leere Ports am Controller für die weiterleitung zum radio, sleeptimer aktivieren, anzeige ganz aus.

wkrug
20.12.2011, 22:02
Okay das wäre auch nicht schlecht. aber wie schließ ich das ganze dann an?
Da Du für die Zusatzfunktionen ohnehin am Quellcode rumbasteln musst seh ich da 2 Möglichkeiten.
1. Ein größerer Controller mit mehr Ports ( z.B. ATMEGA64 )
2. Anzeige Multiplexen - Da bedeutet alle gleichen Kathoden der einzelen Stellen werden miteinander verbunden.
Die Anoden werden über Treiberstufen nacheinander eingeschaltet.
Wenn man das schnell genug macht sieht das Auge es nicht.
Sowas kann man in einer Timer Interrupt Routine im Hintergrund laufen lassen.
Beispiel:
A : Anode Stelle 1 ein, Kathoden für diese Stelle aktivieren.
Der Multiplex Timer läuft weiter bis er wieder seinen Interrupt Punkt erreicht hat.
B : In diesem Interrupt Stelle 1 Anode aus, Stelle 1 Kathode aus, Stelle 2 Anode ein, Stelle 2 gewünschte Kathoden ein.
Der Multiplex Timer läuft weiter bis er wieder seinen Interrupt Punkt erreicht hat.
C : Das Gleiche wieder für die dritte Stelle, dann beginnt das Spielchen wieder mit der ersten Stelle.

Dadurch kriegst Du 12 Ports deines Controllers frei.

Du musst also nur die gewünschte Anzeige in entsprechende Variablen ablegen und der Interrupt holt sie dann dort ab und gibt sie aus.

Als Anoden Treiber kannnst Du einen integrierten Treiberbaustein wie z.B. den UDN 2981 oder einen diskreten Treiber mit einem NPN- ( bzw.NKanal Fet ) und einem PNP Transistor ( P-Kanal Fet ) pro Stelle verwenden.

Ich würd dann auch gleich einen anderen Controller verwenden, wie z.B. einen ATMEGA 16 oder 32.
Die angegebenen Typen sind zwar noch erhältlich, wer weiß aber noch für wie lange.

So eilig scheind es anscheinend nicht zu sein, da Deine letzte Anfrage bereits 8 Tage zurück liegt ;)

darkzone666
20.12.2011, 22:19
Doch est ist eigentlich schon eilig. ;-)
Ist es schwer die Anzeige Multiplexen bzw. die -programmierung dafür?

wkrug
20.12.2011, 22:25
Die komplette Antwort steht in meinem letzten Threat - Erst mal lesen, dann wieder fragen - OK!

Wenn man einen Timer Overflow Interrupt programmieren kann ist's eigentlich ein klacks!
20890
Das Bild zeigt eine komplette Ansteuerung für 6 Stellen ( 4x10cm + 2x6cm ) Siebensegment Anzeigen.
Wegen der unterschiedlichen Ströme für die beiden Anzeigengrößen wurden die Kathodenwiderstände 2 mal erforderlich.

Andree-HB
21.12.2011, 05:32
...lass` mich raten - die Lösung muss bis Samstag stehen . ;-)

wkrug
21.12.2011, 09:08
...lass` mich raten - die Lösung muss bis Samstag stehen . :wink:
... Fertig eingebaut mit professionellen Platinen und einem schmucken vorzeigbarem Gehäuse! LOL!

darkzone666
21.12.2011, 19:25
nein nicht ganz, nächste woche samstag wär aber nicht schleht. der aufbau kann ich ja auf lochraster machen, der ist ja nicht schwer.
aber mit dem programmier technischen tuh ich mir noch einwenig schwer.