Autor Beitrag
DerFalk
Hält's aus hier
Beiträge: 2

Win 98se, Win 2000 Prof, RedHat 9.0
D5 Prof, D7 Personal
BeitragVerfasst: Di 22.07.03 10:25 
Hallo,
ich steh hier vor der Aufgabe einen Decoder (zur Digitalen Steuerung einer Modellbahnanlage) anzusprechen und ein kleines Programm zu schreiben womit ich ihn wenigstens An- bzw Ausschalten kann.
Bei dem Decoder handelt es sich um den 'Multicontrol 2004' von Miba.

www.miba.de/muet/mc2004t.htm

Mein Problem ist erstmal folgendes:
Wie spreche ich die serielle Schnittstelle an? Und wie kann ich Datenbits senden?

Ich hoffe hier kann mir jemand helfen!
Danke im voraus.

_________________
Auf der Verpackung stand, 'Nutzen sie Windows 98 oder besser', ich hab Linux genommen!!
patrick
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1481

WIN2k, WIN XP
D6 Personal, D2005 PE
BeitragVerfasst: Di 22.07.03 12:44 
hast du ein datenblatt von dem Decoder damit man weiß, wie und wo er die daten einliest bzw ausgibt?

_________________
Patrick
im zweifelsfall immer das richtige tun!!!
DerFalk Threadstarter
Hält's aus hier
Beiträge: 2

Win 98se, Win 2000 Prof, RedHat 9.0
D5 Prof, D7 Personal
BeitragVerfasst: Di 22.07.03 14:04 
ja, nur leider ist es sehr rar ausgefallen!!
also, folgendes ist zu entnehmen:

es gibt 3 Datenformate:
- das Selectrix-Format (was auch benutzt werden soll)
- das MÜT-Format
- und das erweiterte Trix-Format

das Selectrix Datenformat:
ein Startbit, 8 Datenbits, kein Paritätsbit, ein Stoppbit und kein Handshake!!
die datenübertragungsrate ist variabel (2400 - 38400)
Die Verbindung des Decoders wird über KEIN Nullmodemkabel hergestellt!!

Ich zitiere aus dem Datenblatt:
Befehlsformat:
"Gesendet werden immer zwei Byte. Das erste Byte ist die Adresse, das zweite ist das Datenbyte. Die Adresse kann 0 bis 111 sowie 127 sein. Ein Schreibbefehl wird dadurch gekennzeichnet, dass das oberste Bit der Adresse gesetzt ist (Adresse + 128). Das zweite Byte (Datenbyte) wird dann auf dieser Adresse auf den SX0-Bus ausgegeben. Ein Lesebefehl wird dadurch gekennzeichnet, dass das oberste Bit der Adresse nicht gesetzt ist. Das zweite Byte (Datenbyte) muss gesendet werden, wird aber ignoriert (der Wert ist egal). Das Interface schickt im Anschluss der Übertragung des zweiten Bytes den Inhalt des durch die Adresse ausgewählten Kanals von SX0 zurück.
(Laut Beschreibung schickt das Original-Trix-Interface(66824) das Antwort-Byte bereits zu Beginn der Übertragung des zweiten Bytes. Das Interface der Zentrale Multicontrol 2004 sendet das Antwort-Byte jedoch erst nach vollständigem Empfang der zweiten Bytes. Das Timing ist also nicht vollständig kompatibel. Dieser Umstand sollte aber bei keiner Software Probleme bereiten. Evtl. wird noch eine Einstellung eingeführt, die das Antowortbyte bereits nach Empfang des ersten (Adress-) Bytes sendet und das zweite komplett ignoriert.)"
"Die Adresse 127 setzt bzw liest den Ein-/Ausschalt-Status der Zentrale im obersten Bit. Die Bits 0 bis 6 werden beim Schreiben ignoriert, beim Lesen sind sie immer 0."

Das ist alles was wissenswertet in dem Buch hier steht!!
Ich hoffe ihr könnt mir weiterhelfen!!

_________________
Auf der Verpackung stand, 'Nutzen sie Windows 98 oder besser', ich hab Linux genommen!!