![]() ![]() INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hallo Grex. Ich verstehe Deine Frage so, daß Du das LCD-Grafikdisplay eDip240 mit einem OM-Kontroller ansteuern willst, nicht umgekehrt. Laut Manual und Beschreibung bei CCTools ist das Display geeignet für I²C-Bus, SPI und RS232. Von daher sollte es keine Schwierigkeiten bereiten, das Diplay mittels OM-Kontroller anzusteuern. Probleme hat es bisher nur mit den verschiedenen Varianten der CC1 V2 gegeben, was aber ausschließlich an deren nichtkonformer Implementierung des I²C-Busses gelegen hat. Und sobald der Anwender versucht, den I²C-Bus selber an Ports zu emulieren, trat das bekannte Problem mit dem Port-Glitching auf. Von diesen Problemen sind die OM-Kontroller aber nicht betroffen. Hier funktioniert der I²C-Bus fehlerfrei und es tritt auch kein Port-Glitching auf. Darüber hinaus gibt es auf der Open-Midi und Open-Macro die Möglichkeit, das bereits im Kontroller enthaltene Hardware-RS232-Modul zu verwenden. Es handelt sich um eine vollwertige serielle Schnittstelle. Im Modul für die Open-Midi kann obendrein die Größe des Empfangsbuffers geändert werden. Auch für die Open-Micro und Open-Mini gibt es interruptgesteuerte RS232-Module mit einstellbarer Buffergröße. Die letzte Ansteuermöglichkeit namens SPI wird auch von einigen OM-Kontroller zur Verfügung gestellt. Die teilweise geringe RAM-Größe der OM-Kontroller dürfte ebenfalls kein echter Hinderungsgrund sein, denn im Manual des LCDs steht "Die Anzahl der Rohdaten pro Paket ist auf max. 64 Byte begrenzt (len <= 64). Befehle die größer als 64 Byte sind (z.B. Bild laden ESC UL ...) müssen auf mehrere Pakete aufgeteilt werden." Im Beitrag 11286 hat André ein Beispiel zur Ansteuerung des eDip240 ins Forum gestellt. Um die Berechnung der Länge und der Prüfsumme für den Anwender einfacher zu gestalten, könnte man die zu sendenden Daten zunächst in einem Buffer im RAM ablegen. Das folgende Beispiel ist die Umsetzung dieser Idee in OCBASIC-Syntax. Das Programm ist selbstverständlich ohne Gewähr, da ich es mangels Hardware nicht testen konnte. ' ----------------------------------------------------------------------------- ' Idee zur Unterstützung des LCD-Grafikdisplays eDip240 auf der Open-Midi ' In OCBASIC Version 1.06 am 1. März 2007 ' ----------------------------------------------------------------------------- INCLUDE "omid.def" DEFINE ^p BYTE DEFINE data BYTE DEFINE pruefsumme BYTE DEFINE laenge BYTE DEFINE BUFADR 64 'Buffer ab Adresse 64, gleich BYTE[65] DEFINE DC1 &h11 DEFINE ESC 27 edip240_clearbuffer edip240_fillbuffer ASC("Y") edip240_fillbuffer ASC("H") edip240_fillbuffer 50 edip240_sendkommando End2Host=ON END PROCEDURE edip240_clearbuffer p=BUFADR laenge=1 RETURN END PROCEDURE PROCEDURE edip240_fillbuffer(data) @p=data ADD p,1 ADD laenge,1 RETURN END PROCEDURE PROCEDURE edip240_sendkommando pruefsumme=0 PUT DC1 ADD pruefsumme,DC1 PUT laenge ADD pruefsumme,laenge PUT ESC ADD pruefsumme,ESC FOR p=BUFADR TO BUFADR+laenge-2 PUT @p ADD pruefsumme,@p NEXT p PUT pruefsumme RETURN END PROCEDURE > Kann man bei CCTools auch eine Frontplatte (schwarz) für den Einbau mitbestellen. Solche Fragen haben in diesem Forum nichts zu suchen und werden von André Helbig von CCTools geklärt. Grüße Dietmar Meine Homepage: http://ccintern.dharlos.de |
Antwort schreiben |