Hi ich wole mit folgendem code
ein selbstdeffiniertes zeichen
in mein LCD Laden aber es geht
nicht. Ich hb es für das LCD
Programm vom AVR-Tutorial geschrieben.
Kann mir jemand sagen was falsch daran
ist und wo genauch ich den code einsetzen
muss??
Hier der Code:
;---------------------
ldi temp1, 0b01001000
ldi temp1, 0b00011111
ldi temp1, 0b00001110
ldi temp1, 0b00000100
ldi temp1, 0b00001110
ldi temp1, 0b00011111
ldi temp1, 0b00001110
ldi temp1, 0b00000100
ldi temp1, 0b00011111
ldi temp1, 0b10000000
;--------------------
Mfg. Merle
Ähm, Du weißt aber, wie man Daten zum Display überträgt???
1. nicht mit dem Datenrichtungsregister
2. fehlt die Ansteuerung von Enable, read/write und C/D
Wenn Du mit den obigen Begriffen nichts anfangen kannst, dann druck Dir
das Tutorial nochmal aus und legs Dir unters Kopfkissen.
@thkais
Den Trick mit dem Kopfkissen kenne ich zwar, aber Du hast vergessen zu
erwähnen, das man sich das was unters Kopfkissen kommt vorher
wenigstens mal durchlesen solle.
Sonst gibt´s morgen einen Tread "HILFE !!! Ich hab´s immer noch nicht
begriffen"
Steffen
Nimm´s mir nicht übel,
aber hast Du schon mal selbst (ohne kopierten Code) ein Zeichen auf´s
Display bekommen?
Das ist nähmlich genauso einfach wie ein Zeichen zu definieren.
Steffen
Hi,
ich verfolge deine Threads und ich würde sagen das du am besten mit
Basic deine Avr`s programmieren solltest. 1. fertige Funktionen 2.
einfacher zu verstehen als C oder ASM.
Nimm z.B. Bascom ..... danach kannste dich an C oder ASM trauen.
Nur ein kleiner Rat von mir...
Mfg
Dirk
Hi Merle!
Ich programmiere zwar in Basic aber in asm sollte es nicht viel
schwieriger zu machen sein.
Ich mach das ganze so:
zuerst natürlich initaliesierung usw...
danach sende ich im befehlsmodus binär 1000000 (dezimal 64) um ins cg
ram an der adresse 0 zu schreiben.
Danach, wieder im Datenmodus, schicke ich nacheinander die 8,
zeichenspezifischen bytes. Voilà, nun ist das neue Zeichen schonmal
gespeichert. (diese 8 bytes kann man sich ausserdem ganz einfach vom
Computer berechnen lassen ->
http://www.geocities.com/dinceraydin/lcd/charcalc.htm)
Darauf setze ich im Befehlsmodus wieder auf das dd Ram (binär 10000000
dezimal 128)
wenn man nun im Datenmodus dezimal 0 an das display schickt erscheint
an erster Stelle in der ersten Zeile das gewünschte Zeichen.
Um dies alles zu testen gibt's auch noch einen online LCD Simulator :
http://www.geocities.com/dinceraydin/djlcdsim/djlcdsim.html
Das alles klang vileicht etwas kompliziert, ist aber ganz einfach.
MFG Nik
P.S. Ich bin erst 13 und habs schliesslich auch schon kapiert! ;-)
also das ist nun wirklich nicht schwer. hab ich gestern erst selbst
gecodet. musst nur n bischen im datenblatt lesen und googlen.
nen kleiner hinweis:
http://www.geocities.com/dinceraydin/lcd/index.html
da wirds ganz genau beschrieben.
viel spaß
Eine eigene Frage?
Dieser Thread ist über 23 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.