Hallo @ all,
ich habe mal wieder ein neues Display. Nicht weil ich ein neues bekommen habe, sondern weil ich es jetzt für eine Schaltung brauche. Es liegt schon seit mehreren Jahren bei mir rum .... 4 Stück davon. Vom edlen Spender habe ich damals diese Displays bekommen inkl. Touch, CCFL-Wandler und Quellcode (read-modify-write). Ich wollte es aber readonly betreiben, da mir die bidirektionale Pegelwandlung 3.3V <--> 5V zu umständlich war. Also hab ich den Code umgeschrieben. Was ich erst vor kurzem heraus bekommen habe: Die LCD-Spannung muß doch (das ging aus dem Datenblatt nicht eindeutig hervor) extern bereitgestellt werden (-21V). Das Display bzw. der Controller unterstützt 4 Screens, die in den Text- oder Grafikmodus gesetzt und verknüpft werden können. Ich verwende nur einen Grafikscreen. Die Konfiguration des Controllers ist recht kompliziert.
Angesteuert mit einem XMega256A3U über Pegelwandler (74ABT245), passiv (nicht read-modify-write), parallel (Datenleitungen, RD/WR, EN, A0, CS, Reset, Select) und im 6800-Modus.
Refreshzeit bei 64MHz µC-Takt <40ms bei 320x240 Pixel.
Achja die CCFL habe ich entfernt und dafür 9 LEDs mit je ca. 30 lm eingebaut. Displaygroße 5.6". Der Displaytyp ist eigentlich egal, es geht hier um den Controller.
Gruss
Harry
[Edit]Ja man verbrät so 9600 Byte RAM als Grafikspeicher, aber das ist und war mir egal. Ein XMega256A3U hat 16kByte davon und ich habe hier wieder mal zu einem Trick gegriffen: Der uC des Displays arbeitet als TWI-Slave und bekommt seine Grafikanweisungen von einem anderen XMega, der als TWI-Master arbeitet. Alle BitMaps sind beispielsweise im Display-uC schon vorhanden und der Master muß nur X, Y und die BitMap-Nummer übermitteln. Das sind nur 5 Bytes (2x Integer + 1x Byte). So habe ich fast alle Grafikbefehle nachgebildet und sogar noch mehr. Es werden relativ komplexe Bilder aus BitMaps und anderen Zeichenoperationen aufgebaut, nur durch Übermittlung weniger Daten.
ich habe mal wieder ein neues Display. Nicht weil ich ein neues bekommen habe, sondern weil ich es jetzt für eine Schaltung brauche. Es liegt schon seit mehreren Jahren bei mir rum .... 4 Stück davon. Vom edlen Spender habe ich damals diese Displays bekommen inkl. Touch, CCFL-Wandler und Quellcode (read-modify-write). Ich wollte es aber readonly betreiben, da mir die bidirektionale Pegelwandlung 3.3V <--> 5V zu umständlich war. Also hab ich den Code umgeschrieben. Was ich erst vor kurzem heraus bekommen habe: Die LCD-Spannung muß doch (das ging aus dem Datenblatt nicht eindeutig hervor) extern bereitgestellt werden (-21V). Das Display bzw. der Controller unterstützt 4 Screens, die in den Text- oder Grafikmodus gesetzt und verknüpft werden können. Ich verwende nur einen Grafikscreen. Die Konfiguration des Controllers ist recht kompliziert.
Angesteuert mit einem XMega256A3U über Pegelwandler (74ABT245), passiv (nicht read-modify-write), parallel (Datenleitungen, RD/WR, EN, A0, CS, Reset, Select) und im 6800-Modus.
Refreshzeit bei 64MHz µC-Takt <40ms bei 320x240 Pixel.
Achja die CCFL habe ich entfernt und dafür 9 LEDs mit je ca. 30 lm eingebaut. Displaygroße 5.6". Der Displaytyp ist eigentlich egal, es geht hier um den Controller.
Gruss
Harry
[Edit]Ja man verbrät so 9600 Byte RAM als Grafikspeicher, aber das ist und war mir egal. Ein XMega256A3U hat 16kByte davon und ich habe hier wieder mal zu einem Trick gegriffen: Der uC des Displays arbeitet als TWI-Slave und bekommt seine Grafikanweisungen von einem anderen XMega, der als TWI-Master arbeitet. Alle BitMaps sind beispielsweise im Display-uC schon vorhanden und der Master muß nur X, Y und die BitMap-Nummer übermitteln. Das sind nur 5 Bytes (2x Integer + 1x Byte). So habe ich fast alle Grafikbefehle nachgebildet und sogar noch mehr. Es werden relativ komplexe Bilder aus BitMaps und anderen Zeichenoperationen aufgebaut, nur durch Übermittlung weniger Daten.
You must be logged in or your permissions are to low to see this Attachment(s).