Forum: Mikrocontroller und Digitale Elektronik LCD Keypad, Hintergrundbeleuchtung deffekt


von Ulrich (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

Ich habe mir aus der Bucht ein Arduino LCD-Keypad shield [0] gekauft.

Im großen und ganzen ist es ein LC-Display und ein paar Taster die über 
eine Widerstandskaskade mit einem AD-Pin verbunden sind.

Die Hintergundbeleuchtung des LCD sollte über ein Transistor zwischen 
der Kathode und GND dimmbar sein. Nach längerer Recherche nach dem 
genauen Schaltplan habe ich herausgefunden, dass die lieben Hersteller 
an der Basis dieses Transistors einen Widerstand vergessen haben. Siehe 
Schaltplan im Anhang. (Bei der Beschriftung D10 ist der PWM Pin 
angeschlossen) Wegen dem vergessenen Widerstand wird der Mikrocontroller 
Pin wenn er auf High ist über die Basis-Emitter Diode des Transistors 
kurz geschlossen.

Das hab ich festgestellt indem ich den Pin des µC als Ausgang auf high 
gesetzt habe und dann wieder zurück eingelesen habe. Wenn hier nicht 
high anliegt, ist der interne Spannungsabfall zu hoch -> Pin ist 
kurzgeschlossen.

Hier [1] ist alles noch mal beschrieben, das ganze ist mir nicht selbst 
eingefallen. Das Testprogramm finden man auf Seite 4, letzter Post. 
(LCDKeypadCheck.pde.zip)

Die beste Lösung für dieses Problem wäre,an der Basis des Transistors 
einen Widerstand an zu bringen, das geht aber nicht, weil über der 
betreffenden Leiterbahn das LCD liegt und ich es nicht schaffe es aus zu 
löten.

Anderer Lösungsvorschlag, eine Diode (mit U_f kleiner als U_f der 
BE-Diode des Transtors) zwischen dem µC Pin und der Basis des 
Transistors anbringen. Ich hab nur leider keine Schottky oder 
Germaniumdiode herumliegen. (Ich kann an dieser Stelle auftrennen.)

Dritte Lösung: An der Betreffenden stelle eine Basis-Schaltung einbauen, 
wie im zweitem Anhang skizziert. (Einen BC47 hab ich ich gefunden.)
Jetzt das eigentliche Problem: Die Methode um nach zu schauen ob der Pin 
kurzgeschlossen ist oder nicht, gibt mir noch immer an, dass der Pin 
kurzgeschlossen ist. Jedoch müsste die Basisschaltung ja bei High am Pin 
sperren, und damit dürft kein Strom fließen, oder hab ich hier einen 
Denkfehler?

lg
Ulrich

[0] 
http://www.ebay.com/itm/1602-LCD-Board-Keypad-Shield-Blue-Backlight-For-Arduino-LCD-Duemilanove-Robot-/170928504704
[1] http://forum.arduino.cc/index.php?topic=96747.0

von Hubert G. (hubertg)


Lesenswert?

Wenn du den R7 nicht an VCC legst sondern an D10 und in die 
Kollektorleitung noch einen 47 Ohm Widerstand einfügst, dann ist alles 
OK.

von Ulrich (Gast)


Lesenswert?

Danke Hubert,

war deine Antwort auf das erste Schaltbild bezogen? Ich kann die 
Verbindung zwischen R7 und der Basis von Q1 leider nicht auftrennen, 
weil mechanisch nicht erreichbar. :( Ansonsten wäre das natürlich die 
logischste Lösung gewesen. Das einzige, das ich machen kann ist zwischen 
dem µC Pin und der Basis des Transistors noch etwas einfügen.
Da wär mein Vorschlag das gewesen, was man im zweiten Bild sieht.

lg
Ulrich

von Hubert G. (hubertg)


Lesenswert?

Ulrich schrieb:
> Das einzige, das ich machen kann ist zwischen
> dem µC Pin und der Basis des Transistors noch etwas einfügen.

Dann hier einen 1k Widerstand einfügen, ein Transistor ist sicher nicht 
notwendig.

von Ulrich (Gast)


Lesenswert?

Danke, werde ich ausprobieren. 1k ist wsl zu viel (5V *1kOhm/5.7kOhm = 
0.88 > 0.7) aber mit 470 Ohm müsste es funktionieren.

Hast du vl noch eine Idee wieso die Basischaltung nicht funktioniert?

von Hubert G. (hubertg)


Lesenswert?

Du kannst in deiner Basisschaltung Q1 nie ganz aufmachen und auch nie 
ganz sperren.

von Ulrich (Gast)


Lesenswert?

Danke nochmal!

Ich glaube ich habe Basischaltungen noch immer nicht ganz verstanden. 
Ich werde mir das ganze nochmal ansehen.

lg
Ulrich

von Hubert G. (hubertg)


Lesenswert?

Du hast am Kollektor der Basisschaltung kaum mehr als 0,7V. Wenn du den 
Emitter auf high legst, dann betreibst du den Transistor invers. Das 
heisst der Kollektor ist negativer als der Emitter.
Das Problem hat also nicht direkt mit der Basisschaltung zu tun sondern 
mit dem nachfolgenden Transistor.

von Ulrich (Gast)


Lesenswert?

Danke, an die inverse Betriebsweise hab ich irgendwie nicht gedacht. 
Irgendwie bin ich davon ausgegangen, dass der Zusatz transistor sperrt, 
wenn der pin high ist.
Ich glaub jetzt hab ichs verstanden.

von R. H. (snapper)


Lesenswert?

Warnung an Benutzer einiger Hersteller LCD-Tastatur Schild

http://forum.arduino.cc/index.php?topic=96747.0

Das verwirrt mich mehr als ich da schlau draus werde !?

was ist denn nun die beste Lösung ?

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
Noch kein Account? Hier anmelden.