Transcription of Datum: 20. August 2011 basierend auf FCC …
1 USB-Schnittstellendokumentation f r FUTURE-CENTRAL-CONTROL (FCC) Datum: 20. August 2011 basierend auf FCC-Firmware-Version oder neuer Seite 1 von 29 USB-Schnittstellendokumentation f r FUTURE-CENTRAL-CONTROL (FCC) Inhalt M glichkeiten zur Kontaktaufnahme .. 3 Die Hardware .. 4 Das Protokoll .. 4 Grunds tzliches zum integrierten Interface der FCC-Digitalzentrale .. 4 Grunds tzliches zum Interface-Protokoll der FCC-Digitalzentrale .. 5 Steuerung von SX1-Loks .. 5 Steuerung von SX2-, DCC- und MM-Loks .. 5 Die Systemformate der FCC-Digitalzentrale .. 7 Das Ein- und Ausschalten der Gleisspannung .. 7 Das Lesen eines SX1-Kanals .. 8 Das Schreiben eines SX1-Kanals .. 8 Das Anmelden einer SX2-, DCC- oder MM-Lok .. 9 Die m glichen Lokformate .. 9 Die SX2-Lokadresse .. 10 Die DCC- und 10 Das Abmelden einer SX2-, DCC- oder MM-Lok .. 11 Das Ver ndern der Fahrstufe/Richtung einer SX2-, DCC- oder MM-Lok .. 12 Die Fahrstufen von SX2-, DCC- oder MM-Loks .. 12 Das Schalten der Lichtfunktion einer SX2-, DCC- oder MM-Lok.
2 13 Das Schalten von F1 bis F16 einer SX2-, DCC- oder MM-Lok .. 13 Die Blockabfrage der SX1/2-Bus-Systeme 0 und 1 .. 14 Die Blockabfrage der SX1-Bus-Systeme 0 und 1 .. 14 Die Blockabfrage der SX2-Bus-Systeme 0 und 1 .. 15 Der Aufbau der SX2-Bus-Erweiterung .. 16 Wiederholung: Die Lokformate .. 17 Ein Beispiel .. 17 Blockabfrage der SX1/2-Bus-Systeme 0 und 1 .. 18 Das Programming on the Main (POM) .. 18 USB-Schnittstellendokumentation f r FUTURE-CENTRAL-CONTROL (FCC) Datum: 20. August 2011 basierend auf FCC-Firmware-Version oder neuer Seite 2 von 29 Das SX2-POM .. 19 Das DCC-POM bei kurzen Adressen .. 20 Das DCC-POM bei langen Adressen .. 20 Die Programmierung von Lokdecodern auf dem 21 Das Auslesen von SX1-Lokdecodern .. 22 Die Programmierung von SX1-Lokdecodern .. 22 Das Lesen der erweiterten SX1-Parameter .. 22 Das Schreiben der erweiterten SX1-Parameter .. 23 Das Auslesen von SX2-Lokdecodern .. 23 Die Programmierung von SX2-Lokdecodern .. 23 Das Auslesen von DCC-Lokdecodern.
3 24 Die Programmierung von DCC-Lokdecodern .. 24 Das Raten einer MM-Lokadresse .. 24 Die Programmierung von MM-Lokdecodern .. 25 Der Abbau des Programmiermodus .. 25 Die Systemformatumschaltung der FCC-Digitalzentrale .. 26 Die Versionsabfrage der FCC-Digitalzentrale .. 26 Fragen und Antworten .. 27 Welche SX1-Kan le sind frei nutzbar?.. 27 Wie erkenne ich, ob eine SX2-, DCC- oder MM-Lok abgemeldet wurde? .. 28 Wie lange dauert es, bis eine freigegebene SX2-Bus-Erweiterung wieder f r eine erneute Anmeldung zur Verf gung steht? .. 28 USB-Schnittstellendokumentation f r FUTURE-CENTRAL-CONTROL (FCC) Datum: 20. August 2011 basierend auf FCC-Firmware-Version oder neuer Seite 3 von 29 M glichkeiten zur Kontaktaufnahme Doehler & Haass GmbH & Co. KG Eichelh herstra e 54 D-81249 M nchen Tel.: 089 / 864 14 87 Modellbahn Technik Team M nchen Wasserturmstra e 30 D-85551 Kirchheim Tel.: 089 / 90 46 95 47 Fax.: 089 / 90 46 95 48 USB-Schnittstellendokumentation f r FUTURE-CENTRAL-CONTROL (FCC) Datum: 20.
4 August 2011 basierend auf FCC-Firmware-Version oder neuer Seite 4 von 29 Die Hardware Die FCC-Digitalzentrale kann mittels einer seriellen Schnittstelle mit einem PC verbunden werden. Zu diesem Zweck besitzt jede FCC-Digitalzentrale eine USB-Schnittstelle, die, durch Optokoppler galvanisch getrennt, ber einen speziellen Integrierten Schaltkreis (FTDI-USB-2-RS232-Chip) mit dem Mikrocontroller der Digitalzentrale verbunden ist. Auf der PC-Seite erzeugt der FTDI-Treiber einen sogenannten virtuellen COM-Port, der, wie eine physische COM-Schnittstelle, verwendet werden kann. Zur Kommunikation ist eine Baudrate von 230400 Bits pro Sekunde fest einzustellen. Die bertragung erfolgt mit acht Datenbits, einem Stoppbit und keinem Parit tsbit. Das Protokoll Grunds tzliches zum integrierten Interface der FCC-Digitalzentrale Innerhalb der FCC-Digitalzentrale erzeugt ein Mikrocontroller der Firma Atmel (Typ: AVR ATmega32) zwei zum Gleissignal taktsynchrone SX2-Bus-Systeme, welche das Fahren von bis zu 103 Loks mit dem SX1-Digitalformat und von bis zu 32 Loks mit dem SX2-, DCC- und MM-Digitalformat erm glicht.
5 Weiterhin erzeugt dieser Mikrocontroller das Gleissignal f r die genannten Digitalformate und verwaltet deren Refreshzyklus. Im Folgenden wird die Einheit der aus den am Gleisausgang der FCC-Digitalzentrale anliegenden Digitalformaten und des Refreshzyklus Systemformat genannt; dies ist vom Digitalformat eines einzelnen Lokdecoders zu unterscheiden, welches im Folgenden Lokformat genannt wird. Die Steuerung einer SX2-, DCC- oder MM-Lok ist grunds tzlich mit dem Vorhandensein einer entsprechenden SX2-Bus-Erweiterung auf dem SX2-Bus 0 oder SX2-Bus 1 verbunden. Bei der Steuerung ber den PC bernimmt der integrierte Interfaceteil der FCC-Digitalzentrale die Verwaltung der f r den PC-Betrieb notwendigen SX2-Bus-Erweiterungen. Auch hier gilt: Eine Loksteuerung der genannten Formate ist untrennbar mit der Existenz einer entsprechenden SX2-Bus-Erweiterung verbunden! Sollten daher alle der bis zu zweiunddrei ig m glichen SX2-Bus-Erweiterungen belegt sein, so kann keine weitere SX2-, DCC- oder MM-Lok mehr gesteuert werden, bevor eine der vorherigen, aufgerufenen Loks abgestellt (funktionslos) und vom PC abgemeldet wurde.
6 Diese Vorg nge werden im weiteren Verlaufe dieses Dokuments ausf hrlich behandelt. Es ist nicht m glich die Ver nderungen der Daten der beiden SX2-Bus-Systeme automatisiert an den PC weiterleiten zu lassen. Es ist daher erforderlich, die Daten der beiden SX2-Bus-Systeme zyklisch von der Digitalzentrale anzufordern ( Polling ) und die Auswertung auf Ver nderungen die PC-Seite erledigen zu lassen. USB-Schnittstellendokumentation f r FUTURE-CENTRAL-CONTROL (FCC) Datum: 20. August 2011 basierend auf FCC-Firmware-Version oder neuer Seite 5 von 29 Grunds tzliches zum Interface-Protokoll der FCC-Digitalzentrale Die FCC-Digitalzentrale sendet unaufgefordert keinerlei Daten ber die serielle Schnittstelle an den PC. Jede Anfrage ist von der PC-Seite aus anzufordern und wird von der FCC-Digitalzentrale beantwortet. Im einfachsten Falle ist dies nur die Quittierung, dass der empfangene Befehl erfolgreich verarbeitet wurde.
7 Es darf immer nur eine Anfrage an die FCC-Digitalzentrale gesendet werden nach dem die Quittierung der vorangegangenen Anfrage empfangen wurde. Werden mehrere Anforderungen unmittelbar hintereinander an die FCC-Digitalzentrale gesendet ohne die entsprechende Quittierung abzuwarten, so kann dieses Fehlverhalten der Anwendungssoftware zu Datenverlusten f hren. Ungeachtet dessen sammelt die FCC-Digitalzentrale dennoch alle eingehenden Anfragen in einem Ringpuffer und wird versuchen diese ordnungsgem abzuarbeiten. Sollte eine Anfrage derzeitig nicht verarbeitet werden k nnen, da beispielsweise eine Lok mit einem Lokformat anzumelden versucht wird, welches zurzeit nicht im Systemformat enthalten ist, wird auf alle F lle eine negative Quittierung versendet. Bytes, welche im Protokoll gesendet werden m ssen, um die formale Korrektheit des Befehls zu garantieren, deren Wert allerdings beliebig ist, werden im Folgenden mit 0xXX kenntlich gemacht.
8 Steuerung von SX1-Loks SX1-Loks werden wie bisher direkt ber die entsprechenden SX1-Kan le des SX1/2-Bus-Systems 0 gesteuert. Die Kanalbelegung ist daher selbstverst ndlich unver ndert geblieben: Bits 0 bis 4 Fahrstufen von 0 bis 31 Bit 5 Fahrtrichtung (0 entspricht vorw rts, 1 entspricht r ckw rts) Bit 6 Licht (0 bedeutet Licht aus, 1 bedeutet Licht ein) Bit 7 Horn (0 bedeutet Horn aus, 1 bedeutet Horn ein) Zur Abfrage des aktuellen Zustandes einer SX1-Lok kann die Einzelkanalabfrage oder aber auch die Blockabfrage eines oder mehrerer SX1/2-Bus-Systeme genutzt werden. Zum Ver ndern dieser Daten dient der Schreibbefehl f r einen SX1-Kanal. N heres dazu finden Sie in den weiteren Kapiteln dieses Dokuments. Steuerung von SX2-, DCC- und MM-Loks Die oben genannten Lokformate werden in Form von so genannten SX2-Bus-Erweiterungen auf dem SX2-Bus-System vorgehalten. Sie sind daher ber die Lese- und Schreibbefehle f r SX1-Kan le unerreichbar.
9 USB-Schnittstellendokumentation f r FUTURE-CENTRAL-CONTROL (FCC) Datum: 20. August 2011 basierend auf FCC-Firmware-Version oder neuer Seite 6 von 29 Weiterhin m ssen Loks dieser Formate erst an der FCC-Digitalzentrale ber den PC angemeldet werden, bevor auf diese zugegriffen werden kann, um beispielsweise die aktuelle Fahrstufe zu ver ndern oder aber eine der bis zu sechzehn Zusatzfunktionen zu schalten. Bei diesem Anmeldevorgang wird eine passende SX2-Bus-Erweiterung auf einem der beiden SX2-Bus-Systeme neu angelegt bzw. eine bereits vorhandene hierf r genutzt. F r den Anmeldevorgang sind die Adresse der zu steuernden Lok und das entsprechende Lokformat anzugeben. Zur ckgeliefert wird der interne Index der zur Lok korrespondierenden SX2-Bus-Erweiterung. Dieser Index wird zur weiteren Steuerung der Lok unbedingt ben tigt, da beispielsweise der Befehl zur Ver nderung der Fahrstufe genau diesen Index und nicht etwa die Lokadresse erwartet.
10 Je nach ausgew hltem Lokformat kann die FCC-Digitalzentrale 127, 14, 28 oder 126 Fahrstufen ausgeben und entweder keine, bis zu vier oder bis zu sechzehn Zusatzfunktionen der Lok schalten. Weiterhin ist selbstverst ndlich auch die Lichtfunktion, und je nach Format, auch ein Nothalt schaltbar. Eine einmal angemeldete Lok kann beliebig oft neu angelegt werden, ohne dass es zu doppelten oder gar mehrfach vorhandenen SX2-Bus-Erweiterungen kommt. Konkret bedeutet dies, dass auch der zweite oder dritte Anmeldebefehl f r ein und dieselbe Lok immer einen identischen Index zur ckliefert. Dies k nnte in manchen Situationen die Programmierung der Steuerungssoftware auf dem PC vereinfachen. Wichtig: Bitte beachten Sie unbedingt, dass der Befehl zur Anmeldung einer Lok an die FCC-Digitalzentrale durchaus mehrere Millisekunden lang Zeit zur Bearbeitung ben tigt. Es ist weiterhin zu beachten, dass w hrend dieser Zeit keine weiteren Befehle an das Interface zu senden sind!