Hallo Leute,
Ich bin noch recht neu auf dem Gebiet der Microcontrollerprogrammierung.
Zu dem Thema bin ich eigentlich nur durch eine Vorlesung an der
Hochschule gekommen - dort haben wir den 8051-Controller erlernt.
Jetzt habe ich mir in den Kopf gesetzt, eine Propelleruhr mit dem 8051
zu bauen.
Die Uhr soll 10 RGB-LEDs besitzen (T66C), angesteuert werden sollen
diese durch den PCA9634 mittels I2C - vorher hatte ich mir die Schaltung
mit einem PCA9532 überlegt, da hatte ich allerdings Bedenken mit der
Geschwindigkeit des I2C-Bus.
Da ich mich mit den Netzteilen nicht auskenne, habe ich mich da an einem
Entwurf aus dem Internet (von der Propelleruhr auf
www.robotikhardware.de) und den Datenblättern orientiert, mit den
Kapazitäten der Kondensatoren bin ich mir daher noch absolut nicht
sicher. Gewisse Vorstellungen, dass die Stromversorgung über
Induktionsspulen funktionieren soll, habe ich aber bereits. Ich bin da
auch bereits am experimentieren, da will ich noch eine
Vollbrückenschaltung bauen, um die Primärspule richtig bestromen zu
können.
Der Microcontroller sitzt auf einem Daughterboard, dass über einen
Stecker und ein paar Haltehülsen mit meiner Platine verbunden werden
soll.
Insgesamt ist dies meine erste richtige Platine, daher bin ich mir bei
dem Aufbau noch sehr unsicher und würde gerne fragen, ob Euch etwas
auffällt oder Ihr Verbesserungsvorschläge habt?
Für Eure Hilfe bin ich Euch sehr dankbar.
Mit freundlichen Grüßen,
Clemens
@ Clemens Z. (icefire)
>Die Uhr soll 10 RGB-LEDs besitzen (T66C), angesteuert werden sollen>diese durch den PCA9634 mittels I2C - vorher hatte ich mir die Schaltung>mit einem PCA9532 überlegt, da hatte ich allerdings Bedenken mit der>Geschwindigkeit des I2C-Bus.
Naja, I2C ist dafür nicht so das glebe vom Ei. Nimm lieber SPI, das ist
deutlich schneller und einfacher.
>sicher. Gewisse Vorstellungen, dass die Stromversorgung über>Induktionsspulen funktionieren soll, habe ich aber bereits. Ich bin da>auch bereits am experimentieren, da will ich noch eine>Vollbrückenschaltung bauen, um die Primärspule richtig bestromen zu>können.
Jaja, immer fest pulsen ;-)
Schau dir mal den Royer Converter an.
>auffällt oder Ihr Verbesserungsvorschläge habt?
Du hast sooo viele freie Pins, warum steuerst du dann die popeligen 30
LEDs nicht direkt an? GGf über kleine Treiber. Ist zehnmal einfacher und
schneller.
MFG
Falk
Vielen Dank für die Info mit dem Royal Converter, genau so etwas habe
ich gebraucht, die Sache klingt sehr spannend!
Mit dem SPI-Bussystem kenne ich mich nicht aus, aber er klingt in der
Tat sehr interessant. Leider kenne ich mich mit dem I2C auch nicht
besonders aus, aber irgendwo muss man ja anfangen. Ich denke, ich werde
das in der ersten Version mal beim I2C belassen.
Ich habe die LEDs nicht direkt an dem Microcontroller angeklemmt, weil
ich etwas lernen möchte :) Direktes Anschließen der LEDs wäre wesentlich
wirtschaftlicher, aber Bussysteme fand ich schon immer faszinierend und
diese Treiberbausteine mit ihren vielen Möglichkeiten machen mich
neugierig.
Ich hatte mir auch mal überlegt, ob man die LEDs direkt anschließen und
dann im Multiplexbetrieb leuchten lassen könnte, aber für das erste
größere Projekt ist mir das erstmal zu aufwendig und der Gedanke der
hohen Ströme im Multiplex-Modus schmeckt mir auch nicht.
Ich möchte mit diesem Projekt zunächst hauptsächlich Erfahrungen
sammeln, aber auch daraus lernen, um dann in der Zukunft bessere
Platinen zu bauen :)
Aber ansonsten, gibt es an der Schaltung funktionstechnisch etwas
auszusetzen?
Etwas Sorgen macht mit der CNY70, den ich direkt an den uC angeschlossen
habe: Da möchte ich den internen Komperator mit Schmitt-Trigger nutzen,
ich hoffe, dass das so funktioniert.
Ansonsten werde ich mich auf den Weg machen, das Platinenlayout zu
erstellen.
Ich habe mir heute die Platine nochmals angeschaut, da sie demnächst
gefertigt werden soll, und habe noch ein paar Fehler korrigiert.
Ich habe alle OE-Pins nun mit einem Pullup-Widerstand von 4.7kOhm
versehen und die high-Adressbits der Treiberbausteine alle direkt mit
der Versorgungsspannung verbunden.
Ich weiß nicht, was mich auf die Idee brachte, die mit einem Pullup zu
versehen. Naja, das ist meine erste Platine :D
Als Adressen habe ich jetzt
000 000 # LED-Treiber 1
000 001 # LED-Treiber 2
000 010 # LED-Treiber 3
000 011 # LED-Treiber 4
festgelegt.
Da mir die Funktion des OE-Pins nicht ganz klar ist, wollte ich da
nochmals nachhaken: Wenn der Pin auf Masse geschaltet ist, sind die
LEDs, wie über I2C programmiert, eingeschaltet, wenn der Pin auf high
ist, dann sind alle LEDs je nach Zustand von OUTNE0 und OUTNE1 ein- oder
ausgeschalet.
Habe ich das so richtig verstanden?
Demnach würde sich bei meiner obigen Verschaltung vermutlich rein gar
nichts tun, vermute ich.
Wie gesagt, habe ich für den OE-Pin nun noch einen Pin am
Microcontroller verwendet. Zwar fällt mir bisher kein Anwendungsfall an,
wann ich alle PCA-Einheiten gleichzeitig abschalten möchte, aber man
weiß ja nie.
Ansonsten habe ich die Vollbrücke für die Spulen mal gebaut, ich habe
vier IRF530-n-Kanal-MOSFet genommen und eine Bootstrap-Treiberschaltung
verwendet.
Mit zwei selbstgewickelten Spulen hat die Sache nach sehr viel Gemurkse
auch ganz prima funktioniert. Nachdem ich an der Sekundärspule eine
Gleichrichterbrückenschaltung angebracht habe und mittels einem 7805 auf
5V reguliert habe, hat ein kleiner 5V-Lüfter nach dem Anschließen gleich
losgerattert :) Diesen Schaltungsaufbau will ich aber mit einer
Lochrasterplatine realisieren.
Eine eigene Frage?
Dieser Thread ist über 15 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.