www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Bascom: Ks0073 Lcd


Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich habe heute mein 4 * 20 Dip Display bekommen.

Jetzt habe ich festgestellt das sich die Speicheradressen fuer die
Zeilen unterscheiden als bei hd44780 Displays ... somit funktioniert es
mit den Bascom Routinen zur Zeilenauswahl nicht.

Ich habe dann kurzer Hand mir meine eigene Routinen geproggt (lcdcls ,
stringausgabe). Da mein 2 * 16 Dip KS0073 Display ohne Probleme
funtktioniert sind es halt nur die Speichadressen fuer die Zeilen die
anders sind. Weiss jemand wo die Adressen fuer die Zeile liegen? Welche
lib ?
Ich habe mir schon die Lib`s angeschaut aber nicht herausgefunden wo
die Zeilenadressen liegen.

Ich wollte mir ersparen die ganzen anderen Funktionen nochmal zuproggen
....

Mfg

Dirk

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

wie es funktioniert ist mir eigentlich klar. Ich moechte nur die
Zeilenadressen in Bascom aendern. Leider finde ich die Adressen nicht
oder ich such in der falschen Lib.

Mfg

Dirk

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
steht doch in dem Link.

Unter 2.3.3. 4-Zeilen-Displays

Stefan

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

hehe wir reden so ein kleines bischen aneinander vorbei. Hab mich auch
bloede ausgedrueckt.

So ist es vielleicht besser gesagt.

Wo finde ich in "Bascom" die Zeilenadressenzuordnung fuer die
Display`s. Mit Config LCD = 4 * 20 lege ich ja die Zeilenadressen fest.
Ich finde nirgends diesen Ausdruck in den Lib's. Sind diese Befehle
fest in BAscom einprogrammiert und nicht aenderbar?

Mfg

Dirk

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh sorry.
Das weiss ich leider nicht.

Stefan

Autor: Divison (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach ja die Geschichte. Wenn man jemandem rät:" Nimn NICHT CODEVISIONAVR
ODER BASCOM, da kannste nicht alles selbermachen weil man nicht an den
Quellcode kommt." Will das immer keiner hören.

Und dann kommen genau SOLCHE Probleme dabei raus.

Wie wärs mit avr-gcc. Ist zwar nicht das einfachste am Anfang, aber
hinterher..... eine wahre FREUDE. Ich kanns immer nur wiederholen. In
meiner LCD.C zum Beispiel steht ALLES drin byte für byte.

Autor: Sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Dirk,

da kommt man so nicht drann.....
Kann dir nur empfehlen eine e-mail an Mark zu schreiben.

Gruß

Sven

Autor: ATmega8Tester (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Dirk,

in der Bascom-Hilfe steht folgendes:

CONFIG LCD = LCDtype

Configure the LCD display and override the compiler setting.
LCDtype This can be :
40 * 4
6 * 1
16 * 2
...
or 20*4A

The 20*4A is also special.
It uses the addresses &H00, &H20, &H40 and &H60 for the 4 lines.

Ich verwende folgenden Code:

...
CONFIG LCD = 20*4A
...

Sollte dies bei Dir nicht zum Erfolg führen, bitte den genauen Typ des
LCD angeben. Für die richtige Initialisierung habe ich e.v. einen
Quellcode für Dich.

Schöne Grüße
Jürgen

Autor: Shazter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich habe jetzt das LCD Display per SPI angeschlossen und die
Initalisierung funktioniert schon. Ich bin nun dabei die ganzen anderen
Funktionen wie z.B. Cursor on usw miteinzubinden. Wenn alles fertig ist
werde ich die Routinen in der Codesammlung bereit stellen.

Ich bedanke mich trotzdem fuer deine Hilfe. Leider war es ein bissel zu
spaet oder ich war zu voreilig.


Mfg

Dirk

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

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich hatte mich wohl zu frueh gefreut. Ich wollte das LCD Display per
SPI ansteuern. Leider funktioniert die Init wohl nicht richtig, weil
ich keine Zeichen gesendet bekomme. Ich habe die INIT aus dem Datasheet
genommen. Ich verzweifel so langsam .... ich kann naemlich auch kein
Fehler in meinen Routinen finden.
Muss das LCD im SPI Modus anders initalisiert werden?

Ich hoffe jemand hat eine Idee ich sitze langsam echt auf dem Schlauch.
Anbei mal mein Code.

mfg
Dirk

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Shazter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ein Fehler ist mir Schlaf eingefallen. Ich hatte gestern von MSB auf
LSB den Spi Bus gestellt.


Somit sind meine beiden Startbytes falsch ....

fuer die Funktion Writecmd muss das Startbyte auf &H1F und fuer
Writedat auf &H5F gestellt werden.

Leider funktioniert es somit immer noch nicht ganz .....


Mfg

Dirk

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

so es funktioniert Prgramm liegt in der Codesammlung



mfg

Dirk

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.