C5: SCI - serieller Bus für's Bedienteil


Die Informationen auf dieser Seite sind für den Umbau nach Anleitung nicht erforderlich. Sie sind nützlich für jene, die selbst Software für das C5 entwickeln wollen.

Das SCI ist eine Eindraht-Schnittstelle zur bidirektionalen Kommunikation zwischen Grundgerät und Bedienteil. Im Ruhezustand zieht ein pull-up-Widerstand die Leitung auf 5 Volt. Die Kommunikation erfolgt mit einer Bitrate von 19200 Baud; es werden ein Startbit, 8 Datenbits und etwa 6 Stopbits verwendet. Wie erwähnt, ist der Ruhepegel 5 Volt, der Aktiv-Pegel 0 Volt.

Das Kommunikationsprotokollkann man grob wie folgt beschreiben:
Die beiden Teilnehmer (Grundgerät GG und Bedienteil BT) sind gleichberechtigt. Die Übertragung beginnt nach dem Ruhezustand zunächst mit einer Art "Übertragungsanmeldung (bus request)". Dazu zieht der sendewillige Teilnehmer den Bus für einige Zeit (BT: ca. 4.9ms, GG-neu: 3.3ms) auf low. Die Gegenstation muß innerhalb dieser Zeit den Sendewunsch erkennen und den Bus ebenfalls auf low ziehen. So erkennt die sendewillige Station, daß nach Loslassen des Busses dieser noch einige Zeit (0.68 ms bei Original-GG) low bleibt, was sie als Zeichen der erfolgreichen Übertragungsanmeldung wertet. Dann folgt nach einer Pause (Größenordnung 3 bis 13 ms) das eigentliche Datentelegramm. Diesem folgt eine weitere Pause (5 ms) und das Antwort-Telegramm. Es gibt auch Datentelegramme, denen kein Antwort-Telegramm folgt. Falls die weitere Telegramme in der gleichen Richtung wie das erste übertragen werden sollen, erfolgt das ohne erneutes bus request. Erst nach Ablauf einer Ruhezeit (einige 10 ms?) gilt der Bus wieder als frei und eine Übertragung muß neu angemeldet werden.

Alle Datentelegramme sind folgendermaßen aufgebaut:


Nutzdaten
(a) vom GG zum BT


(b) vom BT zum GG

Details der Datentelegramme

Message-Type 0x06: Display-Symbole

Beispiel Beschreibung Details
00 Absender GG
1A Empfänger BT
0C Länge 12 Bytes
06 Msg-Typ 6
00 Display-Symbole 1=Schlüssel, 2=Pfeil heraus, 4=Pfeil hinein, 8=Lautsprecher, 16=Hörer, 32=Kreis, Rest=???
01 Display-Balken 1=S-Rahmen, 2=S1, 4=S2, 8=S3, 16=S4, 32=S5, 64=RAE-Rahmen, 128=TAE
00 ???
20 Display-Symbole blinkend 1=Schlüssel, 2=Pfeil heraus, 4=Pfeil hinein, 8=Lautsprecher, 16=Hörer, 32=Kreis, Rest=???
01 Display-Balken blinkend 1=S-Rahmen, 2=S1, 4=S2, 8=S3, 16=S4, 32=S5, 64=RAE-Rahmen, 128=TAE
00 ???
00 ??? 1=komplettes Display blinkend
30 Prüfsumme

Message-Type 0x07: Einstellungen

Beispiel Beschreibung Details
00 Absender GG
1A Empfänger BT
06 Länge 6 Bytes
07 Msg-Typ 7
71 BT-Einstellungen 1=Licht ein, 2=Hörkapsel ein, 4=Mikro ein, 8=Auswahl Freisprech-Mikro, 16, 32, 64=Hörerlautstärke, 128=???
6A Prüfsumme

Message-Type 0x08: Tonerzeugung

Beispiel Beschreibung Details
00 Absender GG
1A Empfänger BT
0B Länge 11 Bytes
08 Msg-Typ 8
C1 Tonhöhe1 Bei Tonhöhe2=0x4F ist Periodendauer des Tons T=(256-Tonhöhe1)*8,138µs
4F Tonhöhe2 ???
0F Tonlänge
01 Pausenlänge
01 Tonanzahl
13 Steuerbits 1=Ton ein, 2=Single shot, 4=???, 8=Portamento, 16=Tastenklick, 32=leiser, Rest=????
8B Prüfsumme

Message-Type 0x2E: Tastencode

1A Absender BT
00 Empfänger GG
07 Länge 7 Bytes
2E Msg-Typ 2E
01 ???
30 Tastencode Beim Loslassen einer Taste wird der Tastencode plus 0x80 gesendet.
02 Prüfsumme

Die Tasten-Nachricht muß vom Grundgerät mit Msg-Typ 10 bestätigt werden, ansonsten wird sie automatisch wiederholt.

Die Tastencodes im Einzelnen:
 
Taste Hex ASCII
1 31 1
2 32 2
3 33 3
4 34 4
5 35 5
6 36 6
7 37 7
8 38 8
9 39 9
* 2A *
0 30 0
# 23 #
C 3A :
. 3B ;
.. 3C <
Links 4B K
Unten 3D =
Rechts 21 !
Oben 3F ?
Hörer 3E >
Reed-Kontakt 48 H

 
 



[Zur C5-Hauptseite]  [Zum Stichwortverzeichnis]
 
Uwe Hennig, 2001-01-24