
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Hallo Laika, > Nun ist offensichtlich ein Digitalport defekt: das ist natürlich sehr ärgerlich. Besonders wenn keine freien Ports mehr übrig sind. >Lohnt es sich dahinter zu forschen, was im Detail defekt ist? Das wohl nur, wenn eine Reparatur möglich ist, die ausserhalb des MC (Microcontroller) liegt [...] Aus technischer Sicht ist es schon interessant zu wissen, wo jetzt die Ursache liegt. Wir haben mal mit dem unten gezeigten CCBASIC Programm eine C-Control Station getestet, an deren Digitalportleiste versehentlich 24 Volt angeschlossen waren. Dort sind 5 Digitalports beschädigt, die sich zwar im Programm noch beschreiben und der geschriebene Wert auch korrekt auslesen lassen. Ansonsten jedoch sind die Ports nicht mehr nutzbar. Interessant: Auch in diesem Fall liegt an einem der kaputten Ausgänge etwa die Hälfte der 5 Volt Versorgungsspannung an. An einem anderen Port lässt sich ein um etwa 0,3 mA höherer Strom nach GND messen, als der rechnersiche Wert des verwendeten Pull-Up Widerstands erwarten liesse (0,82 mA, alle anderen Ports: 0,5 mA.) > 2. Es ergibt sich die Frage, wieder eine V1.1 zu besorgen oder zu modernisieren. Man könnte evt. auch nur den gesockelten MC der C-Control I 1.1 Main-Unit austauschen.Alternativ, oder wenn das Ersatzteil nicht mehr zu bekommen ist, könnte man auch das verbesserte Betriebssystem für C-Control I 1.1 nehmen. Ein erstes rudimentäres Testprogramm für eigene Messungen: ' Mit CCBASIC kompilieren DEFINE BP1 byteport[1] define p1 port[1] define p2 port[2] define p3 port[3] define p4 port[4] define p5 port[5] define p6 port[6] define p7 port[7] define p8 port[8] DEFINE BP2 byteport[2] define p9 port[9] define p10 port[10] define p11 port[11] define p12 port[12] define p13 port[13] define p14 port[14] define p15 port[15] define p16 port[16] DEFINE a byte[1] DEFINE b byte[2] #Schleife IF rxd THEN GOTO Eingabe 'Einzelbits darstellen, Byteport 1 for a=128 to 1 step -(a/2) if (BP1 AND a)=a then print"*"; else print"-"; next print " "; 'Einzelbits darstellen, Byteport 2 for a=128 to 1 step -(a/2) if (BP2 AND a)=a then print"*"; else print"-"; next put 13 ' Cursor zurueck GOTO Schleife #Eingabe GET b IF b=1 THEN END IF b=49 THEN tog p1 '49' ASCII-Wert fuer Taste "1" IF b=50 THEN tog p2 '50' ASCII-Wert fuer Taste "2" IF b=51 THEN tog p3 '51' ASCII-Wert fuer Taste "3" IF b=52 THEN tog p4 '52' ASCII-Wert fuer Taste "4" IF b=53 THEN tog p5 '53' ASCII-Wert fuer Taste "5" IF b=54 THEN tog p6 '54' ASCII-Wert fuer Taste "6" IF b=55 THEN DEACT BP1 '53' ASCII-Wert fuer Taste "7" IF b=56 THEN DEACT BP2 '54' ASCII-Wert fuer Taste "8" IF b=57 THEN BP1 = NOT BP1 '53' ASCII-Wert fuer Taste "9" IF b=48 THEN Bp2 = NOT BP2 '54' ASCII-Wert fuer Taste "0" ' b=0 GOTO Schleife Dazu auch 2 Fragen: Welcher der Ports (Nr.1 bis 16) ist denn betroffen? Liefert einer der Ports einen um etwa 0,3 mA höheren Strom? das |_ Team > Hallo, > > seit nunmehr über 18 Jahren läuft meine CC V1.1 klaglos und steuert und überwacht mein "Hausleitsystem" (Heizung, Warmwasser, div. Türen und Fenster). Nun ist offensichtlich ein Digitalport defekt: > - Egal, ob der Eingang (als DE) 0 oder 5V ist, im CC kommt immer 0 (LOW) an. > - Benutze ich den Port als Digitalausgabe (DA), so ist die Spg. nur ca. 2,5V, > an den anderen Ausgängen 4,6V. > > 1. Lohnt es sich, dahinterher zu forschen, was im Detail defekt ist? Das wohl nur, wenn eine Reparatur möglich ist, die ausserhalb des MC (Microcontroller) liegt, was wohl eher unwahrscheinlich ist. > 2. Es ergibt sich die Frage, wieder eine V1.1 zu besorgen oder zu modernisieren. > Bei Letzterem wäre der Wunsch: > - Einfache Portierung des CCBASIC-Programms, > - Anschluss an den PC über eine mind. 20 m lange Leitung, was ja USB ausschliesst, > - möglichst geringer Umbau der angeschlossenen Peripherie (Sensoren und Aktoren). > > Für Tipps wäre ich dankbar > Laika Meine Homepage: http://visit.ghn-sensorik.de/L-Team/ |
| Antwort schreiben |