Forum: Mikrocontroller und Digitale Elektronik LCD mit Uraltcontroller SED1300 ansteuern


von troll (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Freunde des reverse-engineerings,

ich hoffe auf eine gute Seele die sich mal meine Arbeit ansieht und 
den/die Fehler findet. Ich selbst sitze seit Tagen dran und weiß nicht 
mehr weiter. :-(

Das Problem in einem Satz: Ich versuche ein LCD mit dessen Controller 
SED1300 mittels AVR mega8 anzusteuern und bekomme es nicht hin.

Genauer: Das LCD hat nicht einen sondern 4 Controller und zeigt einfach 
garnichts an bzw. ab und zu 2 schwarze Balken an unterschiedlichen 
Positionen, aber keinen Cursor und keine Buchstaben. Kontrast ist 
richtig eingestellt.

Ich schreib jetzt einfach mal was ich alles gemacht habe, vielleicht 
sieht ja jemand wo ich mich geirrt habe.

Zu dem Controller gibt es nur wenig Infos:
http://www.dougrice.plus.com/hp/LCD1300/index.html
http://www.dougrice.plus.com/hp/LCDdata/index.htm

Ich habe aus dem Quellcode 
http://www.dougrice.plus.com/hp/LCD1300/SR002_SED1300.ASM die 
Ansteuerung (mittels PIC) rausgepopelt:

D0-D7 an PortB *des PICs*
wr an RA2
A0 an RA3
CS an GND
rd an Vcc
Reset an Vcc bzw. offen lassen

Ansteuerung:
Mein Display hat 4 SED1300 und somit 4x CS, davon liegen 3 auf Vcc und 1 
auf GND.
An ENB kommt ein Rechteck 1MHz 50% Tastverhältnis.
An D0-7 kommt der Befehl bzw. ASCII-Code.
An A0 kommt 0 (Befehl) oder 1 (ASCII).
WR ist normalerweise auf 1 und wird kurz auf 0 gezogen um den Controller 
(SED) anzuweisen den Befehl/ASCII-Code zu lesen.

Initialisierung: Alle Bytes sind Befehle (A0=0) und nach jedem Befehl 
wird gewartet.
2 x systemReset = 0x10 senden
1 x displayOn = 0x0D senden
1 x clearDisplayData = 0x01 senden
1 x displayOn = Ox0D senden
fertig, Display bereit.

Ich habe den mega8 folgendermaßen beschaltet:
ENB an PB1 (OC1A)
RD an PB3
WR an PB5
D0-5 an PortC0-5
D6-7 an PortD6-7 (ja ist doof aber geht nicht anders...)

Getaktet wird die Sache von einem Quarz mit 4MHz.

Das Programm ist im Anhang. Die Magic Numbers in TCCR1A/B muss niemand 
entschlüsseln, der Timer funktioniert und erzeugt brav 1MHz (per Oszi
geprüft).

Das sollte erstmal alles sein. Sieht jemand irgendwo einen Fehler?

Schönes Wochenende...

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
Noch kein Account? Hier anmelden.