PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Lcd Display EA-Dogm von Reichelt defekt?



Horstmann
11.02.2006, 11:51
Hallo Leute,

bin neu hier im Forum und auch die Programmierung von Microcontollern ist völliges Neuland für mich.

Ich habe mir einen Atmega32 und ein Display EA Dogm162 bestellt und alles aufgebaut. Programmieren kann ich meinen Atmega.

Datenblatt zum Display: http://www.reichelt.de/inhalt.html?SID=18Xxw-KawQARMAAE41sDw1e00874ca131a2d937daab86155e16b5;AC TION=7;LASTACTION=6;SORT=artikel.artnr;GRUPPE=A521 3;GRUPPEA=A521;WG=0;ARTIKEL=EA%20DOGM162E-A;START=0;END=16;STATIC=0;FC=10;PROVID=0;TITEL=0;D ATASHEETSEARCH=EA%20DOGM162E-A;FOLDER=A500;FILE=dog-m.pdf;DOWNLOADTYP=1;DATASHEETAUTO=;OPEN=1

Ich habe versucht das Display über 4-Bit und dem Standardbeispiel von Bascom anzusteuern. Aber es funktioniet überhaupt nichts. Kein schwarzer Balken einfach nichts.

Stattdessen zerschießt es mir immer den Port am Atmega, an dem RS angeschlossen ist. Zwei Ports sind so durch meine Versuche schon hinüber, was mich wirklich ziemlich ärgert. Das Display ist jedoch von der Spannungsversorgung her richtig angeschlossen.

Ich hoffe ihr könnt mir weiterhelfen.

mfg
Horstmann

chr-mt
11.02.2006, 11:58
Hi,
die DOG Displays brauchen eine andere Initialisierung.
Unter anderem wird dort der Mode und der Kontrast eingestellt (Kontrastpoti gibt's ja nicht)

Wenn es einen Port zerschießt, dann ist was an der Verkabelung falsch.
Eventuell hast du einen Pin an Masse liegen und hast den auf 1 geschaltet.
Du kannst 330 Ohm zwischen Port und Display machen, damit du nix weiteres kaputtmachst.
Die Anschlussbelegung ist unterschiedlich, je nach dem ob du 3,3 V oder 5V verwendest.

Gruß
Christopher

Horstmann
11.02.2006, 12:09
Hi Christopher,

danke schon mal für deine Antwort.

Nutze das Display im 5V Modus. Also ohne Kondensatoren. Könnte es vielleicht sein, dass meine Ports defekt gegangen sind, als ich RS und E am Display verwechselt habe? Die Idee mit dem Widerstand werde ich auf jeden Fall berücksichigen. Dann ist man ja auf der sicheren Seite. Dann muss ich mir wohl erstmal Gedanken über die Initaliesierung machen. Oder mein Display ist jetzt sowieso schon kaputt. Wenn der Port defekt gegeangen ist, ist der Strom ja somit auch durchs Diplay geflossen. Ob das so gut ist?

Kann man so ein Display auch noch relativ einfach über Bascom initalisieren?

mfg
Horstmann

chr-mt
11.02.2006, 13:52
Hi,
dürfte nix passieren, da E und RS ja Eingänge sind.
Da muß irgend etwas anderes faul sein.

Ich hatte es damals auch nur so hingekriegt, daß ich alle 8 Datenleitungen benutzt habe.
Also in 8 Bit initialisiert, dann auf 4 Bit umgeschaltet.
Leider fehlte mir die Zeit weiterzuprobieren, sonst hätte es bestimmt noch mit der 4 Bit Initialisierung geklappt.
Also ist der nachfolgende Code nicht wirklich toll ;)
Aber zum testen kannst du es ja mal so probieren.

Kannst ja mal im MCS Forum gucken, da hat auch einer gerade was drüber geschrieben.
http://www.mcselec.com/index2.php?option=com_forum&Itemid=59&page=viewtopic&t=1632






'Das DOG Display hängt auf PortB
'Die Leitungen EN und RS liegen auf PortD.6 und PortD.7

$crystal = 16000000


Config Pind.6 = Output 'DOG_rs
Config Pind.7 = Output 'dog_en

Dim Commandbyte As Byte

Dog_rs Alias Portd.6
Dog_enable Alias Portd.7

Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portd.7 , Rs = Portd.6

Waitms 50 'Wartezeit für's Display, braucht man wohl..

Gosub Dog_initialisieren 'initialisierung im 8-Bit Modus
Initlcd 'BascomInitialisierung, ab da geht's mit 4 Bit, wenn man will


Cls

Lcd "HALLO WELT !"
Locate 2 , 1
Lcd "DOG DISPLAY"
End


Dog_initialisieren:
Commandbyte = &B00110001
Gosub Send_dog_command
Commandbyte = &B00011101
Gosub Send_dog_command
Commandbyte = &B01011011
Gosub Send_dog_command
Commandbyte = &B01101000
Gosub Send_dog_command
Commandbyte = &B01111111
Gosub Send_dog_command
Commandbyte = &B00001111
Gosub Send_dog_command
Commandbyte = &B00000001
Gosub Send_dog_command
Commandbyte = &B00000110
Gosub Send_dog_command
Return


Send_dog_command:
Waitms 1
Reset Dog_rs
Waitms 1
Set Dog_enable
Waitms 1
Portb = Commandbyte
Waitms 1
Reset Dog_enable
Waitms 1
Set Dog_enable
Waitms 1
Set Dog_rs
Return


Gruß
Christopher

P.S. Dein Vorname fängt nicht zufälligerweise mit einm "R" an ?

Horstmann
11.02.2006, 15:00
Das faule bei mir ist glaube ich das Display. Habe RS und E jetzt zur Sicherheit über jeweils 680 Ohm (zu hoch?) angeschlossen. Diesmal sind immerhin die Ports des Atmega heil geblieben.

Habe es mit der Programm aus dem Link versucht. Bei den Datenleitungen habe ich nun schon alles durchgetestet. Selbst 8-Bit (selber initialisiert). Es tut sich einfach nichts.

Und falsch verdrahtet ist und war von der Spannungsversorgung her definitiv nichts. Das habe ich jetzt inzwischen schon um die 10x überprüft.

Ich glaube ja mittlerweile, dass das Display schon von vornherein defekt war. Wie sonst lässt sich erklären, dass es mir die Ports zerschießt.

Aber auf verlötete Teile hat man wohl keine Garantie mehr oder?

P.S. nein mein Vorname fängt mit P an. Der Benutzername hat auch nichts mit meinem eigentlichen Namen zu tun. Habe ich mir irgendwann mal ausgedacht und nutze diesen in verschiedenen Foren.

mfg
Horstmann

Crazy Harry
15.02.2006, 11:48
ist das noch interessant ?
ich hab die displays an einem mega8 laufen - allerdings über i2c an einem pca9555d

die initialisierung hats aber wirklich in sich
die im datenblatt angegebenen beispiele funktionieren aber hervorragend

nur bei einigen dingen muß man aufpassen:

z.b. hochladen von benutzerdefinierten zeichen (wird hier eine standard-routine verwendet, wird der contrast geändert und man sieht nichts mehr :lol: ). die lcds haben spezielle programmier-modus/moden (mehrzahl ??? :D ). ansonsten wird es als lcd mit 66712-controller angesprochen.

ich progge übrigens mit avrco pascal ....

Horstmann
15.02.2006, 16:31
mein Display läuft leider immer noch nicht. Habe mich wenn ich ehrlich sein soll aber auch noch nicht wieder so damit beschäftigt. Wenn man den ganzen Tag herumprobiert und nichts funktioniert reicht es einem irgendwann.

Werde das Display jetzt mal einem Freund mitgeben, der mal schaut, ob er es zum Laufen bekommt.

mfg
Horstmann