mikrocontroller.net

Forum: Projekte & Code Treiber für LCD-Displays mit KS0066-Controller


Autor: __juergen (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich war ja selber schon oft froh, dass ich hier in der Codesammlung 
hilfreiche Routinen für meine Vorhaben gefunden habe.
Das hatte mir eine Menge Zeit und Ärger erspart.

Es gibt ja etliche Punktmatrix-LCD-Displays mit KS0066-Controller zu 
kaufen. Der Controller wird als HD44780-kompatibel beschrieben. Das ist 
er auch, aber nur größtenteils. Gerade in der Initialisierung und in den 
Timings unterscheidet er sich jedoch. Somit klappt's mit den original 
HD44780-libs oft nicht.

Also hab ich auf Basis der lcd-lib von Peter Fleury eine KS0066-Library 
geschrieben, abgespeckt auf den ausschließlichen Betrieb im 
4-bit-I/O-Modus (was anderes mach ich nie).

Gebaut und getestet mit:

Compiler: AVR-GCC 4.3.2 mit gnu99-flag, AVR-LIBC 1.6.2
Entwicklungsplattform: Kontrollerlab unter Kanotix (Linux-Debian 5.0)
AVR: Atmega8, 8 MHz int. RC-Osz., Fuse-Bytes: Low:0xD4 High:0xE9
Display: Lehner Dabitros YL#202-17/A7 (2 x 20 Z), baugleich mit DEM20231 
(gibt's z. B. bei www.elpro.org)
Pin-Zuordnung: PortD, Pins PIND0 bis PIND6, wird in der 
lcd_ks0066_4bit_io.h gesetzt.

Library als ZIP angehängt, bestehend aus .c und .h-File mit einer 
Beispielanwendung in der main.c. Viel Spaß damit, vielleicht hilft's ja 
dem einen oder anderen weiter.
Rückmeldungen über erfolgreiche Anwendung, Fehler oder Verbesserungen 
gerne ... :)

Grüße Jürgen

Autor: nils (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

bei mir funktionierts nich wirklich :-(

Display ist ein nicht näher spezifiziertes, aber KS0066F drauf (2x24Z).
Habs erstmal mit nem 2313 (8MHz extern) probiert, aber mit dem sollte es 
doch auch gehen, oder?

Port hab ich geändert, aber Display zeigt nichts an (nur den Balken in 
der 1. Zeile, Spannung stimmt also)...

Die LEDs die ich testweise mit an den Port gehängt habe
 blinkern auch fleißig vor sich hin, also scheint der Code zu laufen...

Vielleicht eine Idee wodran es noch liegen könnte?

Gruß Nils

Autor: nils (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
peinlich, aber hat sich erledigt...
hatte die datenleitungen falsch verdrahtet...

Funktioniert jetzt einwandfrei!

gruß Nils

Autor: __juergen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Nils

... na fein :)

Was ich noch beobachtet hab:

Der KS0066 mag's nicht wenn, man ihm nach Anlegen der Betriebsspannung 
die Initialisierungssequenz mehr als 1x verpasst.

Dann funktioniert nur die erste Zeile, solange bis die Betriebsspannung 
unterbrochen und das ganze frisch gestartet wird. Ist mir aufgefallen, 
als ich eine Anwendung weiterprogrammiert hab. Nach jedem neuen Flashen 
des mega8 ging imemr nur die 1. Zeile. Da muss ich den AUfbau jedes mal 
aus- und wieder einschalten.

Autor: daniel44 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bei mir klappt es leider nicht.
Ich habe ein YL # 162 -37 /E7 von Lehner Dabitros mit KS0066.
(Unter dem Aufkleber von Lehner steht : AMPIRE 162C-D REV.A)
und das habe ich nach Erwerb mit Deinem Code @ __juergen probiert,
leider ohne Erfolg.(Es waren nur dunkle Blöcke in Reihe 1 zu sehen.)
Dann aus Verzweiflung den Code aus dem AVR-GCC Tutorial getestet, der 
funktioniert ohne Probleme.

Trotzdem hab Dank für das Posten des Codes.

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.