AT89S8252 + LCD 2x16 + sonderzeichen usw

Gast #424424
Lesenswert?

Hallo Leute, ich hab nen µC AT89S8252 und daran n ganz normales LCD 2x16 
(HD4478...). Programmieren "muss" ich in assembler habs so gelernt und 
keine zeit mich auf c umzustellen)
Mein problem ich werd aus den Datenblättern net schlau mit welchem 
Befehl ich ganz einfach die hinterlegten Sonderzeichen abrufen und 
ausgeben kann. Bis jetzt mach ich alle ausgaben ganz einfach über eine 
tabelle und setze dort direkt den text ein den ich ausgeben will. Den 
rest erledigt eigentlich komplett meine routine.

Bsp:
MOV dptr, #text1  ; Datenpointer auf Text1 setzen
LCALL textzeile1  ; UP für die Ausgabe der ersten Zeile
Text1:  DB 'Zeichen',0

Meine Frage kann mir evtl. jemand ein Helfen das zu proggen ein bsp 
programm geben aus dem ich mir diese infos mopsen darf oder sagen wo ich 
die infos herbekomme. Datenblatt hab ich auch schon mehrere male durch 
und komm irgendwie nich weiter. Danke schonmal im voraus!

 gruß ´s Axele
Gast #424538
Lesenswert?

Also das wort "zeichen" welches in diesen ' ' beiden strichen steht ist 
mein eigentliches wort etc. mit bis zu 16 zechen welches ich dan an mein 
lcd ausgeben kann. Macht mir soweit auch keine probleme.

Das eigentliche problem ist das ich nicht weiß wie man die zeichen 
direkt mit hex oder dualzahl ausgibt.

soll heißen wen ich schreibe

Text1: DB 'Hallo Welt',0

wird auch einfach hallo welt ausgegeben.

Nun schau ich im Datenblatt, sollte die dualzahl 1111 1111 ein 
komplettes kästchen geben (FFh) ja wie mach ich nun meim controller klar 
das jetzt ein zeichen kommt welches er bereits kennt aber diesesmal mit 
dual oder hexzahl?


hoffe ich konnte es diesesmal besser erklären

Danke joe für deine antwort kam leider fatal error :)
Gast #424546
Lesenswert?

>Text1: DB 'Hallo Welt',0

macht doch eigentlich nichts anderes als ab der Marke "Text1" die 
folgenden Zeichen in den Speicher (Flash?) zu schreiben.
Eigentlich müsste

Text1: DB 'Hallo Welt',0xFF,0

"Hallo Welt" + ein komplettes Kästchen ausgeben.

Text1: DB 'H',0
DB 'a'
DB 'l'
DB 'l'
DB 'o'
DB ' '
DB 'W'
DB 'e'
DB 'l'
DB 't'
DB '!'
DB 0xFF
DB 0

Sollte zum gleichen Ergebnis führen...


Gast #425152
Lesenswert?

Also erstmal danke für alle Antworten die auch wunderbar klappen. Jetzt 
nächste Frage^^ Im Datenblatt sind ja alle Adressen der Zeichen 
aufgeliste... Aber zwei mal, einmal ROM Code: A00 und A02 meine Frage 
kann man das umschalten von 00 auf 02 wen ja was muss ich dafür tun?
denn bei A02 hat es erstens mehr Zeichen und zweitens vernünftigere

Danke schonmal im vorraus

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren