Hi!
in dem untenstehenden Code siehst Du die Ansteurung:
Code:
$regfile = "m32def.dat" 'ATmega 32
$crystal = 16000000 'Quarz: 8 MHz
$baud = 19600
$hwstack = 32 'hardware stack
$swstack = 10 'software stack
$framesize = 40 'frame space
'###########################################################################
'Die Baudrate für RS232 Ausgabe.
Dim ___lcdno As Bit
Config Lcdpin = Pin , Db4 = Porta.3 , Db5 = Porta.2 , Db6 = Porta.1 , Db7 = Porta.0 , E = Portb.5 , Rs = Portb.6 , E2 = Portb.7
'Config Lcdmode = Port
'Config Lcdbus = 4 '4 bit mode
Config Lcd = 40 * 4
Initlcd
Do
'If Taster = 1 Then
___lcdno = 0 'Ober Displayhälfte initialisieren, wenn das Display zwei LCD-Controller besitzt
Initlcd
Cursor Off
Cls
Locate 1 , 1
Lcd "** RN-Control Zeile 1 **"
Waitms 10
Locate 2 , 1
Lcd "** RN-Control Zeile 2 **"
Waitms 10
' Else
Cls
___lcdno = 1 'Dies ist nur notwendig wenn das Display zwei LCD-Controller besitzt
Initlcd
Cursor Off
Cls
Locate 1 , 1
Lcd "** RN-Control Zeile 3 **"
Waitms 10
Locate 2 , 1
Lcd "**** RN-Control Zeile 4 ** "
'End If
Wait 1
Loop
End
in der Zeile : config Lcdpin = Pin siehst Du, dass Du mit 2 Portpins getrennt die Enable Pins anschließen musst. Der Vorteil einer 8bit Übertragung könnte ich nur in der Übertragungsgeschwindigkeit mir erklären, habe aber bisher nur immer mit 4 bit gearbeitet.
Viel Spass beim ausprobieren , jedenfalls lief dann bei mir das LCD!
Gruß MAT
Lesezeichen