Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Problem mit original LCD an CC-1 Kategorie: C-Control I V1.1 (von das |_ Team - 19.09.2014 13:25)
 Als Antwort auf Re: Problem mit original LCD an CC-1 von exv6 - 16.09.2014 7:45
Sorry, jetzt haben wir einige Tage gebraucht, vielleicht sind die nachfolgenden Informationen aber noch hilfreich:

> Keine Ahnung, wieviel verschiedene LCD-Routinen ich inzwischen ohne Erfolg getestet habe.

Evt. inkompatibles Programm?

Die auf CD-ROM "Messen,Steuern,Regeln mit dem C-Control/BASIC System" enthaltenen LCD Beispielprogramme (LCDANZ.BAS, DALCD.BAS, TIMELCD.BAS, TEMPLCD.BAS) sind für 8-bit Betrieb ausgelegt. Der 8-bit Betrieb verwendet, neben den Stromversorgungs- und der Kontrastspannungsleitung, 8 Daten + 3 Steuerleitungen. Dafür werden also 11 I/O Ports
des C-Control benötigt und auch an das LCD angeschlossen.

Am Conrad Application Board für C-Control I 1.1, und am Conrad Application Board 2.0 für C-Control I 2.0, sowie beim Conrad I2C-LCD (Best.Nr. 19 83 30) sind die LCD zur Nutzung im 4-bit Modus verdrahtet.

Im 4-bit Modus werden nur 4 der 8 Datenleitungen angeschlossen. Dementsprechend reichen 7 I/O's port[9] bis port[15] des byteport[2] zur vollumfänglichen Ansteuerung des LCD Kontrollers. In vielen Designs, u.a. beim Application Board 2.0, wird der I/O port[16] zur Ansteuerung der LCD-Beleuchtung verwendet.

Der 4-bit Modus nutzt ein anderes Übertragungsprotokoll als der 8-bit Modus. Deshalb können diese Beispielprogramme der CD-ROM mit den LCD der Application Boards 1.x/2.0 nicht funktionieren.




Bild 1: CD-ROM zum Buch "Messen,Steuern,Regeln mit dem C-Control/BASIC System" (Franzis Verlag)
       



Auf der CD-ROM ist u.a. das Setup-Programm für CCPLUS-IDE enthalten. Der Pfad lautet [CD-Laufwerk:]\CCplus\SETUP.EXE  Wer die CD-ROM nicht zur Hand hat: Unter http://ccc.dharlos.de/newfiles/offizielle_CCSite_19991018.ZIP kann der Mirror des C-Control Centers geladen werden. Nach dem Entpacken des Downloads befindet sich das Setup-Program für CCPLUS im dortigen Pfad "\downloads\ccpls108.zip".





Bild 2: CCPLUS-Programm zur Ansteuerung des LCD im 4-bit Modus



 
Wie Dietmar erwähnte kann mit CCPLUS das LCD auf grundsätzliche Funktion getestet werden. Das oben im Bild dargestellte CCPLUS Programm reicht dafür schon aus.

Auch mit BASIC++ kann man das LCD im 4-bit Modus sehr einfach ansprechen. Unter anderem können Texte und Variablenwerte via PRINT-Umleitung auf dem LCD dargestellt werden. Die Ausgabe von Text und Daten erfolgt dabei mit dem PRINT-Befehl auf die gleiche Art wie man es von der Seriellen Schnittstelle her kennt. Dazu wird das LCD-Objekt verwendet, das vom Betriebssystem des C-Control I 2.0 verwaltet wird. Derzeit kennen wir keine Möglichkeit wie das BASIC++ LCD-Objekt auf dem C-Control I 1.1 genutzt werden kann.

Von Klaus2m5 gibt es aber den Treiber "LCD.ZIP" der vergleichbare Funktionalität beim C-Control I 1.1 bereit stellt. Im ZIP-Archiv ist auch ein sehr schönes Demo "lcd demo.bas" enthalten das alle Funktionen des LCD durchläuft und ebenfalls zum Funktionstest des LCD verwendet werden kann. Bitte zuerst "lcd.bas" kompilieren und hochladen wodurch der Treiber in das interne EEPROM programmiert wird.


Wenn auch mit CCPLUS und "lcd demo.bas" keines der 4(?) vorhandenen LCD mit keinem der 2 vorhandenen C-Control I 1.1 funktioniert müsste als nächstes folgende Fehlermöglichkeit ausgeschlossen werden:


Evt. durchgebrannter I/O Port?

Es ist aber wohl unwahrscheinlich dass bei beiden Kontrollern auch gerade die in Frage kommende I/O Portgruppe (teilweise) ausgefallen oder durch elektrische Beeinflussung der angeschlossenen LCD in Mitleidenschaft gezogen ist. Trotzdem der Vollständigkeit halber.

Kontrastspannung des LCD evt. (viel) zu hoch eingestellt?

Da ja in der ersten Zeile schwarze Balken zu sehen sind, ist die Kontrastspannung wohl nicht zu niedrig. Es ist aber auch unwahrscheinlich dass hier der Fehler liegt, denn selbst dann müsste eine Veränderung auf dem LCD zu erkennnen sein. Der Vollständigkeit halber.


Programmspeicher-EEPROM defekt?

Diese Fehlermöglichkeit lässt sich leicht mit dem schon erwähnten EEPROM-Testprogramm für C-Control I 1.1
EEPROM Speichertest für C-Control I 1.1 ausschliessen oder ggfs. bestätigen.

Ansteuerung des I2C-LCD:

>Nun will ich den Schritt über ein PCF-Adapter am I2C-Bus gehen. Leider habe ich nur Beispiele für die cc1 gefunden, wo der interne I2C benutzt wird.

Hier ist ein CCBASIC Beispiel mit dem das I2C-LCD an zwei beliebigen Ports aus der Gruppe port[1] bis port[16] verwendet werden kann. Voreingestellt sind SDA an port[9] und SCL an port[10]. Die Voreinstellung für SDA und SDL kann in den Zeilen


define SDA      port[9]  
define SCL      port[10]


geändert werden. Die per Jumper am I2C-LCD gewählte Adresse muss mit den vorletzten 3 bits in der Zeile


 define LCDADDR  &B01001110


übereinstimmen, bzw. kann dort geändert werden.


Wie geht es weiter?

Das Ding muss doch wieder zum Laufen zu bringen sein ...?! ;)







> Um mein ursprüngliches Problem zu verdeutlichen:
> Eine Steuerung auf Basis eine C-Control-1 Unit V1.1 mit original Display, Folientastatur, Application Bord, DCF77-Empfänger und 433 MHz-Modul, versieht seit 10 Jahren seinen (automatischen) Dienst.
> Nun geht (seit unbekannter Zeit) das Display nicht mehr, es wird nicht einmal mehr
initialisiert.
>
> Also habe ich in der Bucht mir eine weitere Unit V1.1 mit Display besorgt und alle vier Kombinationen ausprobiert. Ohne Erfolg.
> Danach habe ich weitere Displays probiert (162A und 1602).
> Keine Ahnung, wieviel verschiedene LCD-Routinen ich inzwischen ohne Erfolg getestet

habe.
> Nun will ich den Schritt über ein PCF-Adapter am I2C-Bus gehen.
> Leider habe ich nur Beispiele für die cc1 gefunden, wo der interne I2C benutzt wird.
> Mal sehen.

 Antwort schreiben

Bisherige Antworten:

Re: Problem mit original LCD an CC-1 (von exv6 - 21.09.2014 17:10)