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?op...ewtopic&t=1632
Code:'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 ?







Zitieren

Lesezeichen