mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Testprogramm, HD44780, Bascom


Autor: Tim Maler (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Fabian (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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!

Autor: ,,,, (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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..*

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich glaub Du must dein Display noch initialisieren mit InitLCD.
MFG Stefan

Autor: Tim Maler (Gast)
Datum:

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

Trotzdem DANKE!

Autor: Danny P. (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.