Der Nachfolger des WDR-Computerclub mit Wolfgang Back und Wolfgang Rudolph - ...und immer ein Bit übrigbehalten!


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: eDip240 über RS232 Kategorie: C-Control I V1.2/2.0 (von André H. - 20.08.2006 20:24)
 Als Antwort auf eDip240 über RS232 von Florian - 13.08.2006 19:20
André H. nutzt:  CC1-Unit V1.1, Advanced CC1-Unit, Open-Micro, Open-Mini, Open-Mini M-Unit, Open-Mini Station, C-Control 2
Hallo Florian,

Die einzige Möglichkeit, das eDIP an einer CC1 zu betreiben, ist die ohne Smart-Protocol.
Das liegt u.a. an der fehlenden echten Stringverarbeitung.
Auch sollte zum eDIP nicht Klartext(ASCII-Mode) gesendet werden, sondern im Binärmode.
Hier schleichen sich beim Programmieren weniger Fehler ein.
Die Prüfsumme wird folgendermaßen berechnet:
Summer aller gesendeten Byte-Werte modulo 256.
Wenn Du also das Kommando "ESC Y H 50" senden willst, müßte die Ausgabe
folgendermaßen aussehen:

put &h11 ' <DC1>
put 4 ' Len
put 27 'ESC
print "YH";
put 50
put &h11 + 4 + 27 + "Y" + "H" + 50 ' Für "Y" und "H" die ASCII-Codes
   'Hier ist kein Modulo erforderlich, da bei Byte-Sendekommandos nur die unteren 8 Bit beachtet werden

Dieser Datenrahmen wird dann mit ACK oder NOACK quittiert.

Spätestens beim Empfang muß auf jeden Fall ohne dem Protokoll gearbeitet werden,
da allein schon der beschränkte Empfangspuffer der CC1 überlaufen würde.

Ich kann eigentlich nur empfehlen, das eDIP mit Controllern zu betreiben,
die mehr Ressourcen bieten, wie die CC2 oder CC-Pro.

MfG André H.


> Hallo,
>
> Ich hoffe das Thema langweilt euch nicht...
> Also ich hab mir kürzlich bei Conrad eine C-Control M-Unit 2.0 und ein Application Board gekauft.
> Ich habe vor damit eine Schwimmbadsteuerung zu realisieren mit Bedienung via eDip240. Das Display habe ich noch nicht, ich simuliere das derzeit noch am PC.
> Also ich habe einiges an erfahrung mit Visual Basic gesammelt und daher ist mir dieses Basic++ einigermaßen zugänglich :)
> zu meinem Problem: Ich habe versucht den Protokollrahmen welches ja vom eDip gefordert wir zu erzeugen, doch so ganz will es nicht funktionieren, d.h. es funktioniert nur wenn ich das Smartprotokoll deaktiviere. Ein oder bekomme ich auch nicht, bzw ich kann es nicht richtig auslesen. Gibt es da vielleicht schon ein fertiges Modul oder hat das schon jemand mit der M2.0 realisiert?? Oder kann das Problem am Simulierten eDip liegen???
>
> Hier mein momentaner Code (Bitte nicht schlagen)
>
> befehl = "#TA #GD 0,0,239,127"
> bezeichner = "DC1"
> bytes = LEN(befehl)
> checksum = Len(bezeichner) + 1 + Len(befehl)' mod 256
> print bezeichner & bytes & befehl & checksum
>
>
> (Das DC1 steht in dreiecksklammern, das schluckt aber der Browser...)
> Das kommt am Terminal raus:
>
> DC119#TA #GD 0,0,239,12725
>
>
> ich denke ich hab da ein grundsätzliches verständnis problem, ich weis z.B. nicht wie ich die checksum vom übrigen teil trennen muss. ein CR habe ich schon versucht
>
> Hoffe ihr könnt mir helfen...
>
> Gruß Florian

 Antwort schreiben

Bisherige Antworten: