Forum: Mikrocontroller und Digitale Elektronik Testprogramm, HD44780, Bascom


von Tim Maler (Gast)


Lesenswert?

Hallo,

ich bräuchte ein Quellcode-Beispiel um mein LCD-Display von Pollin zu
testen. (HD44780)
Es ist hat eine 27*4 Anzeige und ich betreibe es im 4bit Modus.
Hier meine Lötungen:

RS --> B.0
E1 --> C.3
E2 --> C.2
D4 --> B.5
D5 --> B.4
D6 --> B.3
D7 --> B.2

Ich verwende einen ATmega8 mit externem Takt bei 4 MHz. Mein Quellcode
hat nicht wirklich funktioniert. (siehe unten)

Wo kann der Fehler liegen? Das Display zeigt jedenfalls am Anfang zwei
schwarze Balken, was ja schon mal gut ist...

DANKE.
---------------------------------------------------------------

$regfile = "m8def.dat"
$crystal = 4000000

'Einbindung der LCD-Bibliothek für ein 2-Prozessor-Display
 $lib "lcd4e2.lbx"

'Bascom kennt keine Display mit 27 * 4 Zeichen, daher 40 * 4
verwenden
 Config Lcd = 40 * 4

'man achte auf die Ergänzung E2
 Config Lcdpin = Pin , Db4 = Portb.5 , Db5 = Portb.4 , Db6 = Portb.3 ,
Db7 = Portb.2 , E = Portc.3 , E2 = Portc.2 , Rs = Portb.0

' Systemvariable der LCD-Bibliothek (wichtig, bloß nicht ändern)
   Dim ___lcde As Byte

' wählt die beiden oberen Zeilen aus
 ___lcde = 0

' löscht die beiden oberen Zeilen
   Cls
' wählt die obere Zeile aus
   Upperline
' schreibt in die erste Zeile an Position 3
   Locate 1 , 3
' den Text in Anführungszeichen
   Lcd "Zeile 1"
' wählt die zweite Zeile aus
   Lowerline
' schreibt in die zweite Zeile an Position 2
   Locate 2 , 2
' in diesem Fall den Inhalt der Variablem mit dem Namen Variable
   Lcd "Test"
' unterdrückt den Cursor
   Cursor Off

' wählt die beiden unteren Zeilen aus
   ___lcde = 1
   Waitms 100
   Cls
   Thirdline
   Locate 1 , 1
   Lcd "Zeile 3"
   Fourthline
   Locate 2 , 1
   Lcd "Zeile 4"
   Cursor Off

von Fabian (Gast)


Lesenswert?

ich glaub mit bascom wirst du hier nicht viele antworten bekommen...
lern doch ein bisschen assembler...
macht spass, ist sehr variabel und man versteht das kleine ding nachher
auch!

von ,,,, (Gast)


Lesenswert?

> ich glaub mit bascom wirst du hier nicht viele antworten bekommen...
lern doch ein bisschen assembler...
macht spass, ist sehr variabel und man versteht das kleine ding nachher
auch!

Klasse Kommentar ^^ muss ich echt zugeben *kopfschüttel..*

von gast (Gast)


Lesenswert?

Hallo,
ich glaub Du must dein Display noch initialisieren mit InitLCD.
MFG Stefan

von Tim Maler (Gast)


Lesenswert?

Nee, die Initlcd wird bei Bascom automatisch erzeugt, sobald
LCD-Anweisungen benutzt werden. Daran kann es also nicht liegen...

Trotzdem DANKE!

von Danny P. (Gast)


Lesenswert?

emm... du hast oben deine "lötungen" niedergeschrieben....

die übrigen datenpins und den rw des lcd hast du aber schon auf masse
gelegt, oder?


greetz
Danny

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.