|
|
|
Übersicht:
Funktion:
Bevor
auf die Funktion des InterFace-Controllers (IFC)
eingegangen wird, hier erst einmal ein
Eindruck von
den aufgebauten Platinen. Um die USB-Schnittstelle anstelle einer RS232
Verbindung nutzen zu können, kann auf den IFC ein
USB-Adapter gesteckt werden. Der USB-Adapter wird weiter unten gezeigt.

IFC Bestückungsseite

IFC Lötseite
Auch
das Platinenlayout darf
nicht
fehlen.

Der
IFC stellt
die Verbindung zwischen der MoBaSbS und einem PC her. Alternativ kann
zwischen
einer RS232 Schnittstelle (19.200 Baud) mit Hardwarehandshake (CTS)
oder
einer USB-Schnittstelle gewählt werden. Damit war die MoBaSbS
die
erste Modellbahnsteuerung (man berichtige mich, wenn dies nicht stimmen
sollte), die über eine echte USB Verbindung angesprochen
werden
kann. Zur Nutzung der USB Schnittstelle
ist ein VirtuellerComPort (VCP) Treiber nötig.
Er
emuliert eine serielle Schnittstelle im PC für die
Steuerungssoftware;
der Datenverkehr wird aber über die USB-Verbindung
hergestellt.
Den
Treiber für den VCP und weitere Informationen findet man bei FTDI.
Weitere Hinweise unter ' Sonstiges'.
Bevor auf die Aufbauhinweise eingegangen wird, hier noch der
USB-Adapter:

USB Adapter - Bestückungsseite

USB Adapter - Rückseite
Aufbauhinweise:
Der
USB-Adapter kann auf dem IFC direkt eingelötet werden. Ich
empfehle aber, ihn in zwei Fassungsreihen zu sockeln.
Für den
DIP-Switch lassen sich
zwei Varianten einbauen. Auf dem Bild oben ist die - wie ich
finde
- 'unbequemere' Variante eines flachen DIP-Switches zu sehen. Ich
empfehle hier einen abgewinckelten DIP-Switche einzusetzen, da dieser
auch bei der Montage einer Frontplatte eingesetzt und erreicht werden
kann.
Die im Layout zu sehenden roten Punkte bezeichnen die Kathode der
eingesetzten Dioden bzw. den Minus-Anschluß der Elkos. Hier
liegt
eine der häufigsten Fehlerursachen, die bisher beim
Zusammenbau
der MoBaSbS aufgetreten sind.
Weitere Hinweise bzgl. der ISP-Schnittstelle und zum Reset finden sich
auf der Seite zum BMC.
Der Anschluss des Interfaces findet wieder über die Backplane
statt, die
alle Module untereinander verbindet.
Die Platine ist als Einschubkarte für ein
19''-Gehäuse
ausgelegt
und kann mit einer Frontplatte versehen werden.
Zu den markierten Punkten:
- A
- Hier
können +5V
eingespeist werden.
Ich nutze diese Einspeisung, wenn ich ein Board ausserhalb des
Gehäuses
programmieren möchte.
- B
- DIP-Switch
zur
Konfiguration
des Interfacetypes
und der Baudrate bei RS232 Betrieb
- C
- Schnittstelle
und
Komponenten
für
den RS232 Betrieb
- D
- Schnittstelle
und
USB-Adapter
für
den USB-Betrieb
Sonstiges
Die beiden LEDs direkt am
oberen linken
Rand der Platine zeigen den
Status der internen Verbindung zum BMC (oberste, gelbe LED) und
den
Status des CTS Signals (rote LED darunter) an. Die beiden weiteren LEDs
dienen Debug-Zwecken und brauchen nicht unbedingt bestückt
oder in
eine Frontplatte integriert zu werden.
Über den DIP-Switch lassen sich verschiedene Betriebsmodi und
Kommunikationsarten des IFCs
einstellen.
- Lokfahr- und funktionsbefehle an den PC weiterreichen
In diesem Modus, den man
durch das
Setzen des 8ten DIP-Switches (siehe untenstehende Abbildung)
auswählen kann, werden Lokfahr- und funktionsbefehle, die von
einem MoBaSbS-Modul (z.B. HDC) abgesetzt werden, an den PC
durchgereicht. Das MoBaSbS eigene Konfigurationstool wertet diese
Informationen aus und aktualisiert die Zustandsinformationen
(Geschwindigkeit, Richtung und Status der Funktionstasten) in den
Lok-Kontroll-Fenstern.
Durch die
Unterstützung der
MoBaSbS über einem MoBaSbS eigenen Treiber durch die
Modellbahnsteuerungssoftware TrainControllerTM
ist es nun auch neben der MoBaSbS-Konfigurationssoftware
möglich,
diesen Modus auszunutzen; bei anderen Modellbahnsteuerprogrammen sollte
der DIP-Switch 8 nicht gesetzt sein.
Damit gibt es nun 2 Möglichkeiten, die MoBaSbS an
TrainController TM
oder die MoBaSbS-Konfigurationssoftware anzubinden:
1. Über die serielle
Schnisstelle des IFCs
2. Über die USB-Schnittstelle
des IFCs
Die DIP-Switch-Einstellungen für diese beiden Modi sind in der
folgenden Abbildung gezeigt:
- Prinzipiell unterstützte der IFC 3 verschiedene
Kommunikationsarten.
Diese
sind:
- serielle Kommunikation (RS232). Diese Verbindung
entspricht dem
von der Firma "Lenz Elektronik GmbH" definierten seriellen
Protokoll.
- USB Kommunikation mit seriellem Protokoll. Diese
Verbindung
entspricht wiederum dem oben genannten seriellen Protokoll, wobei
anstelle der seriellen, die
USB-Schnittstelle über den VCP genutzt wird.
- USB Kommunikation. Diese Verbindung entspricht dem
von der Firma "Lenz Elektronik GmbH" definierten USB
Protokoll. Auch hier wird jedoch eine emulierte serielle
Schnittstelle (VCP) genutzt, um die Kommunikation mit einer
Modellbahnsteuerungssoftware herstellen zu können.
Zur Einstellung der Die
Kommunikationsarten gelten die in der Abbildung gezeigten
DIP-Switch Stellungen.
Zur Orientierung sind die neben dem DIP-Switch liegenden LEDs mit
eingezeichnet.
Hinweise zum VCP
(Virtuellen Com-Port)
Treiber von FTDI. Der auf dem
USB-Adapter eingesetzte USB Chip hat dir Bezeichnung FT245BM. Er kann
z.B. bei dem Distributor "Reichelt Elektronik" bezogen werden. Aktuelle
Treiber (VCP-Treiber aktuelle Version) findet
man, wenn man diesem Link
folgt. Die Installation ist sehr einfach. Nachdem man das ZIP-Archiv
von FTDI geladen hat, wird es in ein beliebiges Verzeichnis entpackt.
FTDI war so freundlich und hat der MoBaSbS eine eigene PID innerhalb
der für FTDI vergebenen VID zugeteilt (VID: Vendor ID, PID:
Product ID). Die VID lautet 0x0403, die zugewiesene PID
0xCB20.
Diese beiden Werte, sowie die 'Product Description' 'USB-IF MoBaSbS
V2.0', mit denen der USB-Adapter programmiert wurde, müssen
in zwei Dateien 'ftdibus.inf' und 'ftdiport.inf', die in
dem ZIP-Archiv enthalten sind, eingetragen werden. Wer die
Änderungen nicht manuell in die Dateien eintragen
möchte, der
kann hier die beiden bereits modifizierten Dateien herunterladen und
die beiden mitgelieferten Dateien von FDTI durch die Heruntergeladenen
ersetzen: FTDI_modified.zip
Hier die Einzelheiten für diejenigen, die die beiden Dateien
selbst modifizieren möchten (dargestellt sind lediglich die
Passagen in den beiden Dateien, in denen die rot eingefärbten
Zeilen ergänzt werden müssen):
Ftdibus.inf
aus VCP-Treiberpaket, Version 2.06.02 vom
30.03.2010
[FtdiHw]
%USB\VID_0403&PID_6001.DeviceDesc%=FtdiBus.NT,USB\VID_0403&PID_6001
%USB\VID_0403&PID_6010&MI_00.DeviceDesc%=FtdiBus.NT,USB\VID_0403&PID_6010&MI_00
%USB\VID_0403&PID_6010&MI_01.DeviceDesc%=FtdiBus.NT,USB\VID_0403&PID_6010&MI_01
%USB\VID_0403&PID_6011&MI_00.DeviceDesc%=FtdiBus.NT,USB\VID_0403&PID_6011&MI_00
%USB\VID_0403&PID_6011&MI_01.DeviceDesc%=FtdiBus.NT,USB\VID_0403&PID_6011&MI_01
%USB\VID_0403&PID_6011&MI_02.DeviceDesc%=FtdiBus.NT,USB\VID_0403&PID_6011&MI_02
%USB\VID_0403&PID_6011&MI_03.DeviceDesc%=FtdiBus.NT,USB\VID_0403&PID_6011&MI_03
%USB\VID_0403&PID_CB20.DeviceDesc%=FtdiBus.NT,USB\VID_0403&PID_CB20
[FtdiHw.NTamd64]
%USB\VID_0403&PID_6001.DeviceDesc%=FtdiBus.NTamd64,USB\VID_0403&PID_6001
%USB\VID_0403&PID_6010&MI_00.DeviceDesc%=FtdiBus.NTamd64,USB\VID_0403&PID_6010&MI_00
%USB\VID_0403&PID_6010&MI_01.DeviceDesc%=FtdiBus.NTamd64,USB\VID_0403&PID_6010&MI_01
%USB\VID_0403&PID_6011&MI_00.DeviceDesc%=FtdiBus.NTamd64,USB\VID_0403&PID_6011&MI_00
%USB\VID_0403&PID_6011&MI_01.DeviceDesc%=FtdiBus.NTamd64,USB\VID_0403&PID_6011&MI_01
%USB\VID_0403&PID_6011&MI_02.DeviceDesc%=FtdiBus.NTamd64,USB\VID_0403&PID_6011&MI_02
%USB\VID_0403&PID_6011&MI_03.DeviceDesc%=FtdiBus.NTamd64,USB\VID_0403&PID_6011&MI_03
%USB\VID_0403&PID_CB20.DeviceDesc%=FtdiBus.NTamd64,USB\VID_0403&PID_CB20
[Strings]
Ftdi="FTDI"
DESC="CDM
Driver Package"
DriversDisk="FTDI
USB Drivers Disk"
USB\VID_0403&PID_6001.DeviceDesc="USB
Serial Converter"
USB\VID_0403&PID_6010&MI_00.DeviceDesc="USB Serial Converter A"
USB\VID_0403&PID_6010&MI_01.DeviceDesc="USB Serial Converter B"
USB\VID_0403&PID_6011&MI_00.DeviceDesc="USB Serial Converter A"
USB\VID_0403&PID_6011&MI_01.DeviceDesc="USB Serial Converter B"
USB\VID_0403&PID_6011&MI_02.DeviceDesc="USB Serial Converter C"
USB\VID_0403&PID_6011&MI_03.DeviceDesc="USB Serial Converter D"
USB\VID_0403&PID_CB20.DeviceDesc="USB-IF MoBaSbS V2.0"
SvcDesc="USB Serial Converter Driver"
ClassName="USB"
Ftdiport.inf
aus VCP-Treiberpaket, Version 2.06.02 vom
30.03.2010
[FtdiHw]
%VID_0403&PID_6001.DeviceDesc%=FtdiPort232.NT,FTDIBUS\COMPORT&VID_0403&PID_6001
%VID_0403&PID_6010.DeviceDesc%=FtdiPort2232.NT,FTDIBUS\COMPORT&VID_0403&PID_6010
%VID_0403&PID_6011.DeviceDesc%=FtdiPort2232.NT,FTDIBUS\COMPORT&VID_0403&PID_6011
%VID_0403&PID_CB20.DeviceDesc%=FtdiPort232.NT,FTDIBUS\COMPORT&VID_0403&PID_CB20
[FtdiHw.NTamd64]
%VID_0403&PID_6001.DeviceDesc%=FtdiPort232.NTamd64,FTDIBUS\COMPORT&VID_0403&PID_6001
%VID_0403&PID_6010.DeviceDesc%=FtdiPort2232.NTamd64,FTDIBUS\COMPORT&VID_0403&PID_6010
%VID_0403&PID_6011.DeviceDesc%=FtdiPort2232.NTamd64,FTDIBUS\COMPORT&VID_0403&PID_6011
%VID_0403&PID_CB20.DeviceDesc%=FtdiPort232.NTamd64,FTDIBUS\COMPORT&VID_0403&PID_CB20
[Strings]
FTDI="FTDI"
DESC="CDM Driver Package"
DriversDisk="FTDI USB Drivers Disk"
PortsClassName = "Ports (COM & LPT)"
VID_0403&PID_6001.DeviceDesc="USB Serial Port"
VID_0403&PID_6010.DeviceDesc="USB Serial Port"
VID_0403&PID_6011.DeviceDesc="USB Serial Port"
VID_0403&PID_CB20.DeviceDesc="USB-IF MoBaSbS V2.0"
SvcDesc="USB Serial Port Driver"
SerEnum.SvcDesc="Serenum Filter Driver"
Konfiguration des USB-Adapters:
Damit die oben beschriebenen Einstellungen auch zum USB-Adapter passen,
muss dieser entsprechend konfiguriert werden, sofern er nicht fertig
aufgebaut über mich bezogen wurde. Hier nun die Schritt
fuer Schritt Anleitung, wie man vorzugehen hat:
- Der
USB-Adapter der MoBaSbS wird mit dem PC verbunden.
Eine
neue Hardware wird
erkannt.
- Nun
den VCP-Treiber von FTDI, so wie oben beschrieben,
installieren. Hat man alles richtig gemacht, dann sollte jetzt der
USB-Adapter im Gerätemanager des Betriebssystems auftauchen.
- Nun
startet man 'mprog', ein kleines Konfigtool, welches
man
ebenfalls bei FTDI findet (http://www.ftdichip.com/Resources/Utilities.htm)
- Alle
notwendigen Parameter für die Konfiguration
des
USB-Adapters sind bereits in der Defaultdatei
enthalten, die in 'mprog' geladen werden kann. Über die
entsprechenden Knopf in 'mprog' (der Knopf hat das Aussehen eines
'blauen Blitzes'), wird nun der Adapter, d.h. der USB-Chip und das
EEPROM konfiguriert. Damit sind alle notwendigen Einstellungen bereits
vorgenommen.
- Fertig!
Verbindet man nun die MoBaSbS erneut, so
erscheint sie
auch
mit
Namen und korrekter Kennung im System.
Download
Sowohl
der uC-Code für den
Betrieb des IFC im USB Modus oder über
die RS232 Schnittstelle sind neben den Layoutdateien und
Bestückungslisten im Downloadbereich zu finden.
Bitte diesem
Link folgen.
Diese Seite unterliegt den Nutzungsbedingungen und der Datenschutzerklärung (siehe weiterführende Links im Impressum) dieser Internetpräsenz
|