Display am External Memory Controller (EMC) eines LPC2468

OP #1284843
Lesenswert?
• ▲
▼
Hi zusammen!

Also ich hab folgendes Problem: Ich habe ein Projekt am laufen, welches 
u.a. einen LPC2468 als MCU und einen Densitron OLED als Display 
beinhaltet. Eigentlich wollte ich den 16 Bit Datenbus und die 3 
Steuersignale RD, WR, CS und RS des OLEDs an einem GPIO anhängen und den 
Display so ansteuern.

Nun ist mir zuvor die Idee gekommen, den OLED an den Externen 
Speicherbus zu hängen (da ist bereits ein 16MB SDRAM vertreten). Da 
könnte man den CS des OLEDs an den CS0 für die erste Speicherbank des 
MCU hängen und dann ganz simpel Daten mit dem Display austauschen. 
Sinnvollerweise hängt man den Datenbus D0..15 des OLEDs an den Datenbus 
des EMC D0..15 :), und den RS (Register Select) an eine der 
Adressleitungen.

Dann könnte man im C-Code theoretisch so mit dem Display kommunizieren:
1
*((unsigned short *)0x80000000) = 0x1234; //Daten gehen ins Instruktionsregister
2
*((unsigned short *)0x80000002) = 0x5678; //Daten gehen ins Parameterregister

Nun ergibt sich bei mir aber folgendes Problem: Was mache ich mit den 
Signalen RD und WR? Ich Frage mich ob es nicht zu einem Problem werden 
könnte, RD und WR des Displays direkt an OE und WE des MCU zu hängen, da 
beim EMC ja noch die Byte Lane Selects ins Spiel kommen (BLS0..3). Kann 
ich den ARM irgendwie so konfigurieren, dass er alle 16 Bits auf einmal 
schreibt und nicht in 2 Bursts, oder zumindest irgendwie BSL0 an WR des 
Displays hängen, damit dieser beim ersten Byte schon den ganzen Bus 
einliest?

Hat das jemand schon gemacht?

Achja und wegen dem RS: Der müsste doch an den A1 im Falle eines 16 Bit 
Busses, da A0 ja immer LOW ist, oder?


Besten Dank für jegliche Tipps und Anregungen!

Grüsse,
Fabian

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