www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik BASCOM und Pollin LCD Display


Autor: Dieter Harms (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, ich habe mir bei Pollin ein LCD Display gekauft. (HD44780, 4x27
Zeichen, kennt vermutlich der ein oder andere)

Jetzt habe ich ein Programmierproblem mit Bascom. Dort lässt sich doch
der Anschluss frei konfigurieren oder muss ich mich an irgendwelche
konkreten Pinbelegungen halten?

Ich hatte mir folgendes Schema überlegt und danach auch meine Schaltung
ausgelegt: (4-Bit-Modus)

RS --> PinB.0
E1 --> PinC.3
E2 --> PinC.2
D4 --> PinB.5
D5 --> PinB.4
D6 --> PinB.3
D7 --> PinB.2

So habe ich das Ganze verdrahtet und mein Programmcode sieht nun wie
folgt aus:

$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

Config Lcdbus = 4
Config Lcdmode = Port

'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



Main:

' 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 "Zeile 2"
' 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

Goto Main
End

Autor: Dieter Harms (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Display macht jetzt auch etwas, aber bekomme irgendwie nur
kryptische Dinge. Am PC lässt sich das Display tadellos betreiben.

Bitte helft mir!

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So ein Display habe ich auch!

Autor: Paul Baumann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schreib mal unter ___lcde = 0 das Wort Initlcd hin. Es sieht so aus,
als ob das Ding nicht initialisiert würde.

MfG Paul

Autor: Robert Schilling (razer6)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!
Hast du was rausgefunden??? Bei mir geht das auch nicht!
Mein Code sieht erstmal so aus:

$regfile = "m16def.dat"
$crystal = 10000000

 $lib "lcd4e2.lbx"


 Config Lcd = 20 * 4

 Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 ,
Db7 = Portb.3 , E = Portb.5 , E2 = Portb.6 , Rs = Portb.4

 Dim ___lcde As Byte

 ___lcde = 0
 Cls
 Locate 1 , 1
 Lcd "zeile 1"

Funktioniert nicht! :( Alles richtig verlötet.. ans Port B
Weiss jemand warum?

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich vermisse den
  InitLCD
der das LCD initialisiert.

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe ich korrigiert....
passiert nichts :(
Kontrast funzt.
Es gibt bestimmt noch ein hacken bei 2 Controller -LCD.
mir dem einfachen LCD habe ich keine probleme mehr

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wo kann das problem denn liegen?????????

Autor: _CH_ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

versuche mal bei Config Lcd 40*4 und initialisiere jede Displayhälfte 
einzeln!

Wenn das noch immer nicht funzt, kann ich dir mal meinen Code posten, 
der bei mir bisher anstandslos funktioniert.

Gruß,
Christian

Autor: HSBO (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nun habe ich endlich mein LCD-Modul von Pollin erhalten, und X-Mal die 
Anschlüsse durchgemessen.
Alles korrekt verbunden.
STK500 PortB --> LCD
8515 und 90S2313 mit dem LCD Programm beschrieben. Nach dem 
Programmieren erscheinen meist die ersten beiden Zeilen wie es im Prog 
steht.
Zeile 3 und 4 erscheinen nach dem löschen des CLS.
Nach einem Reset oder nach Ein- und Ausschalten verschieben sich die 
Inhalte oder es werden Buchstaben durch andere Zeichen ersetzt.

Bei einem Programm von mir in dem ich nur Wörter in die vier Zeilen 
setze ist es ähnlich.
Und nocheinmal habe ich die verbindungen nachgemessen. Die stimmen 100%.

Jetzt habe ich das Programm vom RoboterNetz für das 4 Zeilige Modul 
aufgespielt. Die 4 Zeilen werden richtig dargestellt, dann jedoch 
wechseln die Zeileninhalte.Zum Beispiel Zeile 4 in Zeile 3. Jedoch kann 
mann kein System erkennen. Das LCD zeigt einfach was es will. Ab und zu 
sind wirre Zeichen dabei.

Danach habe ich den Ausgangsport gewechselt. Das Ergebniss ist dasselbe.

Autor: Dieter Harms (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genau so sieht es bei mir auch aus. Am PC über LPT lässt sich das 
DIsplay wunderbar betreiben, doch über meinen ATmega8 und Bascom bekomme 
ich nur komische Zeichen in den Zeilen dargestellt. Alles geht drunter 
und drüber...


Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
keine Ahnung, was ihr da habt.. bei mir funzt er SCHON einwandfrei.. hat 
mir aber 2 Tage LESEN gekostet

Autor: HSBO (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
BEI MIR WAR DIE $CRYSTAL-DIREKTIVE VERKEHRT (2000000 statt 1000000)

Es läuft jetzt wunderbar.

Vielleicht hilft es euch ja auch.

Gruß
HSBO

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.