Hallo Ich habe mir folgendes Display gekauft.... http://www.sparkfun.com/commerce/product_info.php?products_id=8844 Ich habe auch bereits eine Eagle Library für das Display erstellt und wollte nun mit dem Programmieren des Treibers beginnen, doch nun sind ein paar fragen aufgetaucht welche ich nicht selbst lösen kann.... Die erste Frage welche sich mir stellt, ist ob das Display den Bildinhalt automatisch aus seinem Internen Ram heraus aktualisiert oder ob ich kontinuierlich daten liefern muss... Die Zweite Frage ist, auf Sparkfun.com steht 18bit Parallel Interface.... Doch auf der Pinbelegung gibt es SCL und SDI Leitungen und im Datenblatt steht auch was von SPI.... also kann ich es doch mittels SPI ansteuern? Im Datenblatt des HD66781 steht folgendes: The Serial Peripheral Interface (SPI) is selected by setting IM3/2/1 pins to GND/Vcc1/GND levels respectively. The SPI is available through the chip select line (CS), serial transfer clock line (SCL), serial data input (SDI), and serial data output (SDO). In the SPI mode, the IM0/ID pin functions as ID pin. In the SPI mode, the DB17-2 pins, which are not used, must be fixed at either IOVcc level. DB17-2 es gibt doch überhaupt keine DB Pins... nur R G und B Pins... IM3/2/1 ??? Gibt es nach der Pinbelegung auch nicht!!.... Ich bin echt Ratlos.... Zudem finde ich nirgends ein datenblatt für den eigentlich verwendeten HD66782 Ich hoffe ihr könnt mir helfe..... Danke Schonmal! Liebe Grüsse
Sorry, aber durch 2 Minuten Datenblatt ansehen stellst du fest das der Controller schon mal 5 verschiedene Interfaces (8bit, 16bit, SPI...) bietet. Kurz darauf die Beschreibung der einzelnen Signale!
Ja das er SPI Hat ist mir schon klar.... Jedoch der HD66781.... auf dem Display ist jedoch der HD66782 Verbaut.... und zu diesem habe ich kein Datenblatt gefunden... und da auf der Sparkfun Seite 18Bit interface steht, dachte ich das der 82 vieleicht kein SPI hat... Dann habe ich jedoch die SDI und SCL Leitung beim Pinout gesehen.... Die Frage ist mehr, welches die IM3/2/1 Pins sind und welche R G und B Pins ich den nach VCC Schliessen soll...
Das kannst du knicken. Das SPI Interface ist nur für Steuerbefehle zuständig. Das Display hat auch kein RAM so das du ständig Daren schicken musst!
Thorsten wrote: > Das Display hat auch kein RAM so das du ständig Daren > schicken musst! Falsch: http://www.hbi.de/clients/Renesas/pms04/18_03/HD66782_4.doc
danke für das Doc.... Das klingt ja sehr vielversprechend.... aber im Word stand nix von SPI... also ist das SPI nur für Befehle?
Wenn der 66781 dem 66782 ähnlich ist, dann kann man über Display Control 4 (R00Bh) (Seite 49 im 66781 Datenblatt) zwischen SPI und dem RGB Modus umschalten. Über SPI sind dann aber nur 65k Farben möglich.
hmmm.... 65k Farben sind doch genug :D Kann ich das Register den von beginn an über SPI Beschreiben? und was ist D16B ? Entweder bin ich zu doof oder das Datenblatt zu kompliziert... Beim Beschleunigungssensor hat alles bestens geklappt mit dem Programmieren ^^
Claudio Hediger wrote:
> Kann ich das Register den von beginn an über SPI Beschreiben?
Ja. Selbst im RGB Modus geht das, über SPI wird das Display nämlich
initialisiert.
ok sehr gut..... Nun belibt für mich nur noch offen was damit gemeint ist: The Serial Peripheral Interface (SPI) is selected by setting IM3/2/1 pins to GND/Vcc1/GND levels und damit: In the SPI mode, the IM0/ID pin functions as ID pin. In the SPI mode, the DB17-2 pins, which are not used, must be fixed at either IOVcc level. Welches sind den die DB17-2 Pins? und welches sind die IM3/2/1 Pins? Danke für deine Antworten
Claudio Hediger wrote: > Nun belibt für mich nur noch offen was damit gemeint ist: > > The Serial Peripheral Interface (SPI) is selected by setting IM3/2/1 > pins to GND/Vcc1/GND levels Die dürften intern schon passend verdrahtet sein. > Welches sind den die DB17-2 Pins? Seite 27: 18 bit RGB interface (1 transmission/pixel) Da siehst du die Zuordnung RGB zu DB.
OK Vielen Dank.... Ich hab mal nen kleinen Plan gezeichnet.... (Die Mikrocontrolroller Seite ist noch nicht fertig....) Müsste das so Funktionieren? (LCD Seite) Danke Schonmal
Warum nutzt du nicht gleich die Hardware SPI des Controllers sondern GPIOs?
Da ich leider keine Doppelseitigen Platinen ätzen kann... bzw noch nie ausprobiert und deshalb diese Pins am einfachsten zu verdrahten sind.... Habe sowieso schon ne selbstgeschriebene SPI Routine... von daher bedeutet das kein mehr aufwand für mich :) Ist es den richtig Connected?
Naja, aber bevor ich auf den Luxus einer Hardware SPI verzichte löt ich bei der einseitigen LP lieber ein paar Drahtbrücken mehr ein!
Etwas OT, ich weiss, aber ich hab auf der Seite, auf die Claudio's Link verweist, diverse andere, sehr itneressante Dispalys gesehen. Besonders toll finde ich dieses: http://www.sparkfun.com/commerce/product_info.php?products_id=8542 Sowas wär ganz geil. Auch das Interface sieht super simpel aus! Also ich hab mir mal die Seite vom Hersteller angesehen, und dort steht etwas davon, dass man noch einen speziellen USB-Adapter braucht, um das Display verwenden zu können? Hab ich da was falsch verstanden oder was? Oder könnte ich tatsächlich so ein Display nehmen, es an Rx und Tx von meinem Microcontroller hängen, und loslegen? Oder was muss ich da vorher noch mit diesem ominösen USB-Adapter anstellen? Wär cool wenn mir einer einen Tipp geben könnte, ich brauch nämlich in meinem nächsten Projekt ein farbiges Display, und dieses wäre genau ideal :-) Gruss Tobias
Hi... da steht: Easy 5 pin interface to any host device: VCC, TX, RX, GND, RESET Ich denke mal das bedeutet das man es an RX und TX anschliessen kann Steht ja im Titel Serial LCD.... Vieleicht haben die gemeint das es einen USB Adapter auf basis des FTDI 232 gibt.... Kann noch jemand sagen ob mein Aufbau nach Schaltplan funktionieren müsste bzw ob das Display richtig connected ist??
Claudio: Ich glaube die Vorredner wollten sagen, dass Du das Display lieber direkt an das Hardware SPI interface anschliessen solltest. Also Pin 15/17. Damit ersparst Du Dir ein Software SPI (was natürlich auch nicht allzu schwer ist). Ob alle anderen Anschlüsse richtig sind, kann ich nicht sagen. Aber es fehlt noch ein empfehlenswerter 100nF Kondensator am AVR.
...und ein Pull-Up am Reset fehlt auch.
Ok Vielen Dank! Am besten ich ätze mal eine kleine test platine und führe alle leitungen zur sicherheit noch raus damit ich die noch verändern könnte... Danke euch allen.... Wenn interesse besteht würde ich fotos und Software hochladen wen ich fertig bin
Das LCD benötigt 2.8V Der controller liefert jedoch TTL Pegel somit 1 = 5V Da folgendes steht: In the SPI mode, the DB17-2 pins, which are not used, must be fixed at either IOVcc level. --> IOVcc <-- gehe ich davon aus dass die IO Pins andere Pegel haben dürfen.... Stimmt das?
Der Pullup am Reset ist nicht nötig. Die AVRs haben alle einen völlig ausreichenden internen Pullup am Reset Pin! Der externe Pullup ist nur ein "Angstwiderstand" und eigentlich nur nötig, wenn man am Einsatzort des Kontrollers (EMV) Störungen erwartet.
SF wrote: > Der Pullup am Reset ist nicht nötig. Die AVRs haben alle einen völlig > ausreichenden internen Pullup am Reset Pin! Der externe Pullup ist nur > ein "Angstwiderstand" und eigentlich nur nötig, wenn man am Einsatzort > des Kontrollers (EMV) Störungen erwartet. Da habe ich aber gegenteilige Erfahrungen gemacht. Könnte von der Controller-Generation abhängen.
Werner B. wrote: > SF wrote: >> Der Pullup am Reset ist nicht nötig. Die AVRs haben alle einen völlig >> ausreichenden internen Pullup am Reset Pin! Der externe Pullup ist nur >> ein "Angstwiderstand" und eigentlich nur nötig, wenn man am Einsatzort >> des Kontrollers (EMV) Störungen erwartet. > > Da habe ich aber gegenteilige Erfahrungen gemacht. > Könnte von der Controller-Generation abhängen. Die alten tinys (tiny12 usw.) haben keinen Pullup, aber bei allen anderen funktioniert das gut. Meine Erfahrung: 100nF gegen GND machen alles unempfindlicher gegen Störungen als ein 10k Pullup.
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.