Hi, ich hab hier ein RGB LED Matrix Display mit 32x32 RGB LEDs (wurde aus 2 32x16 Displays zusammengesetzt, wobei die Zeilen 16 bix 31 quasi die verlängerten Zeilen von 0 bis 15 sind). Sind Displays wie diese hier: http://learn.adafruit.com/32x16-32x32-rgb-led-matrix/overview Das Problem das ich damit habe, ist, dass Zeilen, die ausgeschaltet sein sollen, nach einer eingeschalteten Zeile auch nachleuchten. Ich hab mir hier im Forum auch schon andere Beitrage bezüglich dieses Themas durchgelesen. Hat aber meistens was mit zu spät ausschalten oder zu früh einschalten zu tun. Die Ansteuerung läuft so, dass über Schieberegister 64 Bit jeweils für R, G und B hineingeclockt werden. Die Schieberegister haben Stromsenken als "Ausgänge" an denen die LEDs hängen. Nachdem die Bits hineingeclockt wurde, wird gelatcht und auf eine neue Zeile umgeschaltet. Um ein zu frühes Einschalten bzw. ein zu spätes Ausschalten der Zeile über den "OE" Eingang auszuschließen, wird während des hineinclockens für einen Takt einmal das OE Signal aktiv und dann wieder inaktiv geschaltet. Wenn ich an einem Pin des Schieberegisters messe, sehe ich, dass sich die Spannung bei aktivem OE erhöht und wenn OE wieder inaktiv wird, geht die Spannung wieder zurück auf 0V (IMHO sollten die Ladungsträger auch draußen sein, oder?). Beim Umschalten auf die nächste Zeile passiert es dann, dass der Stromausgang des Schieberegisters beim Aktivieren von OE nicht ganz auf die Versorgungsspannung geht. Und damit wird vermutlich das Nachleuchten entstehen. Das Schieberegister mit Stromausgang ist übrigens ein SM16126 Bauteile. Dürfte irgendwas chinesisches sein. Kann es sein, dass der Chip nicht gut genug sperrt und dadurch die LEDs quasi nachleuchten? Kennt jemand dieses Bauteile? Danke schonmal, Andreas
Adafruit redet zwar von Datenblatt, verlinkt habe ich aber keines gefunde n. Wie sind denn die Zeilen-MOSFETs angesteuert? Auch aus so einem stromliefernden Schieberegister ?
Es sind 8 Dual P-Channel MOSFETs (APM4953) vorhanden, die zusammen die 16 Zeilen eines "Halbdisplays" (32x16) ansteuern. Die Gates werden (soweit ich das jetzt mal gemssen habe) direkt mit dem Output Enable (OE) Signal gesteuert, welches von einem Bustreiber (74HC245) getrieben wird. Der Output Enable Pin des Schieberegisters liegt immer auf Masse. Interessanterweise wird jedesmal wenn der PMOS geschaltet wird der Ausgang des Schieberegisters ein Stück "higher". Während der PMOS ein ist, steigt die Spannung nicht. Anbei auch ein Bild. Das obere Signal wurde direkt am Ausgang eines Schieberegisterpins gemessen. Der Ausgang ist "low" sobald ich quasi eine 1 reingetaktet habe und die LED damit leuchten soll. Der kurze Impuls, mit "OE" bezeichnet, ist, wenn ich den OE Enable Pin aktiviere und somit der PMOS durchgeschaltet wird. Das untere Signal ist das Signal mit dem ich die Zeilen durchzähle. D.h. eine halbe Periode entsprecht einer ganzen Zeile.
Hab natürlich Blödsinn geschrieben. Die 8 Dual Channel FETs werden mit den Ausgängen eines 74HC138 (3-to-8 Line Decoder) gesteuert. Die Dauer des Einschaltens wird über den OE Pin gemacht indem der 74HC138 mit dem Pin "enabled" wird. Hier auch nochmal etwas mehr Info (wobei ein anderer LED Treiber verwendet wird): http://www.hobbypcb.com/blog/item/3-16x32-rgb-led-matrix-technical-details.html
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.