Hallo Ich würde gerne ein kleines Display (kein Dot-Matrix) ansteuern. Das Display hätte 32 Segmente die ich ansteuern kann. Diese Segmente werden über einen HOLTEK HT1621 Display Controller angesteuert. Der Displaycontroller kommuniziert mittels 3 Leitungen mit meinem uC. Diese wären CS (chip select), WR Clock und Data. Für mich scheint dies ja wie eine kastrierte kastrierte SPI Schnittstelle. Somit ist mir eigentlich noch alles klar, jedoch sollte der Mikrocontroller an den Displaycontroller mehr als 8 Bit auf einmals senden. Siehe Bild 1 Die ersten 3 Bit um den Write Modus zu erkennen. Die nächsten 6 sind für die Adresse und dann noch 4 für die Daten. Wenn ich 2 Zeichen hintereinander schalten will setzt der Clock des Mikrocontrollers jedoch für kurze Zeit aus. Siehe Bild 2 Ist das überhaupt der richtige Weg?? Was könnte ich noch versuchen? Vielen Dank. nicart
es wäre hilfreich zu wissen, welchen µC Du verwendest. Gruß Thomas
Einen uPD78F0500 von NEC / Renesas aus der 78k0/KB2 Familie.
@ nicart (Gast) >Für mich scheint dies ja wie eine kastrierte kastrierte SPI >Schnittstelle. Wieso kastriert? Das IST SPI, einfach und robust. >Wenn ich 2 Zeichen hintereinander schalten will setzt der Clock des >Mikrocontrollers jedoch für kurze Zeit aus. Das ist normal, du musst ja nachladen. Es wird immer nur ein Byte am Stück gesendet. Spielt bei SPI aber keine Rolle. >Ist das überhaupt der richtige Weg?? Ja. >Was könnte ich noch versuchen? Was geht denn nicht? Die Lücke im Datentransfer stört keinen. MFG Falk
Ja, das ist wohl normal. Der Controller erkennt diese Lücke gar nicht, weil das Protokoll nur auf die Flanken des Taktes basiert, egal was dazwischen für Pausen sind.
Hi >Wenn ich 2 Zeichen hintereinander schalten will setzt der Clock des >Mikrocontrollers jedoch für kurze Zeit aus. So lange du CS nicht deaktivierst ist das egal. Den Displaycontroller interessieren nur 16 aufeinander folgende Flanken, nicht deren Abstand. MfG Spess
Echt? Super, dann werde ich das ganze mal an den Controller schicken. Vielen Dank an Alle
Hallo Ich hätte da nochmals eine kleine Frage. Wie würdet ihr das Datenpaket zusammenstückeln? Da ich ja 13 Bit senden sollte, aber ich ja nur vielfache von 8 senden kann. Die Taktleitung taktet ja mit, solange zeichen gesendet werden. Siehe Bild. Gelb Clock / Takt. Violet ChipSelect CS. Blau Daten. Danke vorab
@nicart (Gast) >Wie würdet ihr das Datenpaket zusammenstückeln? >Da ich ja 13 Bit senden sollte, aber ich ja nur vielfache von 8 senden >kann. Mit SPI in Software kannst du belibige Datenpakete senden, ist halt etwas langsamer. http://www.mikrocontroller.net/articles/AVR-Tutorial:_Schieberegister Und die Jungs, die den IC gebaut haben, sollten noch mal ein paar Nachhilfestunden nehmen. MfG Falk
Nachtrag. Möglicherweise kann man aber auch einfach führende Nullen auffüllen und dann Vielfache von 8 Bit senden, denn der IC scheint ja feste Bitkombinationen als Erkennung der Kommandos zu nutzen. Dann klappts auch mit Hardware-SPI. MFG Falk
Hallo @Falk: Diese Idee hatte ich gerade auch und somit auch gleich umgesetzt. Mal schauen obs funktioniert. Danke.
> Das ist normal, du musst ja nachladen. Es wird immer nur ein Byte am > Stück gesendet. Spielt bei SPI aber keine Rolle. Das ist eine Frage des Controllers. Es gibt auch welche die koennen durchaus 64Bit oder mehr am Stueck senden. Olaf
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.