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
Hi, Du weißt in diesem Code-Schnipsel 10x temp1 einen neuen Wert zu. Schön. ;-) Du mußt die temp1-Variable auch übergeben! Per "out" o.ä.! Sebastian
...Gehen Sie zu http://www.avr-asm-tutorial.net/avr_de/beginner/index.html , begeben Sie sich direkt dahin, gehen Sie nicht ueber LOS, ziehen Sie keine 2000 Euro ein... :-P
Meinst so??? ;--------------------- ldi temp1, 0b01001000 out DDRC, temp1 ldi temp1, 0b00011111 out DDRC, temp1 ldi temp1, 0b00001110 out....... ldi temp1, 0b00000100 .......... ldi temp1, 0b00001110 ....... ldi temp1, 0b00011111 ....... ldi temp1, 0b00001110 ...... ldi temp1, 0b00000100 ...... ldi temp1, 0b00011111 ...... ldi temp1, 0b10000000 out DDRC, temp1 ;-------------------- 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
Ja ich weiß schon wie aber ich hab noch nie ein zeichen selbst deffiniert. Das ist ziemlich kompliziert. Mfg. Merle
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
Danke. Aber ich bleib bei ASM. sonst muss ich wieder ganz von forne anfangen. Mfg. Merle
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ß
Danke Nik Bamert und Tobias Breckle Mfg. Merle p.S. Bin erst 14 naja aber ich Arbeite noch nicht lange mit den AVR's Danke nochmal.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.