Today:
   Support & Service
      Download Center
      RMA Service
      Product Warranty
      FAQ
   Related Links
    ::  Contact Us
>visionsystems.de/Support & Service/Frequently Asked Questions

Häufig gestellte Fragen und dazugehörige Antworten

English Version of FAQ


Serielle Ports unter LINUX einrichten

Nur für die VScom-Karten der PCI-Serien werden spezielle Treiber angeboten. Dies ist kein Hindernis, da die seriellen Schnittstellen bereits vom Kernel unterstützt werden. Die Einstellungen müssen lediglich konfiguriert werden. Das ist auch für PCI-Karten möglich; bei älteren Kerneln sogar unumgänglich. Diese Konfiguration geschieht mittels Setserial. Die Eintragungen sollten in /sbin/init.d/serial vorgenommen werden, damit sie bei jedem Start ausgeführt werden. Ein Beispiel könnte so aussehen:

        ${SETSERIAL} ttys0 port 0x3f8 irq 4 uart 16550A ^fourport
        ${SETSERIAL} ttys1 port 0x2f8 irq 3 uart 16550A ^fourport
        ${SETSERIAL} ttys2 port 0x100 irq 5 uart 16550A ^fourport
        ${SETSERIAL} ttys3 port 0x108 irq 5 uart 16550A ^fourport
        ${SETSERIAL} ttys4 port 0x110 irq 5 uart 16550A ^fourport
        ${SETSERIAL} ttys5 port 0x118 irq 5 uart 16550A ^fourport
        

Die Ports ttys0 und ttys1 sind die schon vorhandenen Schnittstellen. Die Ports ttys2 bis ttys5 gehören zu einer VScom 400 Turbo, eingestellt auf Basisadresse 0x100 und IRQ 5. Für eine VScom 800 Turbo wird entsprechend bis ttys9 eingetragen. Mit diesen Einstellungen arbeiten alle Schnittstellen korrekt. Mit zusätzlichen Aufrufen lassen sich auch weitere Schnittstellen in das System integrieren.

Bei den VScom PCI-Serien ergibt sich hier ein Problem. Durch den PCI-Bus (Plug&Play) erhält die Karte ihre Resourcen dynamisch zugeteilt. Damit ist die Einstellung nicht direkt zu kontrollieren. Allerdings ist Linux hier ebenfalls ausreichend informativ. In /proc/pci findet sich alle notwendigen Informationen. Hier die wichtigen Angaben für alle Karten der VScom PCI-Serien, mit exemplarischen Adressen und IRQ.

Der IRQ und die Adressen werden bei Setserial eingetragen. Diese Resourcen werden bei jedem Neustart des PC dynamisch zugeteilt; sie ändern sich aber erst dann, wenn die sonstige Konfiguration des Rechners anders ist. Man kann sich daher auf diese Werte verlassen.

Außerdem ist eine VScom PCI Karte automatisch auf die hohe Übertragungsrate eingestellt, d.h. achtfach. Es würde also immer eine höhere Baudrate erreicht, als vom Programm konfiguriert. Um dieses zu korrigieren, benötigt Setserial eine zusätzliche Angabe, nämlich baud_base 921600.
Der Treiber wird so konfiguriert, daß er alle Geschwindigkeiten basierend auf der maximalen Übertragungsrate von 921.6kbps errechnet. Es ist inzwischen bei vielen Karten möglich, wieder die niedrige Geschwindigkeit einzustellen. Das wird aber nicht empfohlen, daher hier auch nicht berücksichtig.

Kompatibilität und höhere Geschwindigkeiten:
Besonders ältere Programme erlauben nicht, alle Geschwindigkeiten (insbesondere hohe) anzugeben. Für diese Zwecke gibt es die Optionen spd_hi und spd_vhi. Wenn eine Schnittstelle mit dieser Angabe konfiguriert ist, dann verwendet der Treiber statt der Baudrate 38400 die Geschwindigkeit 57.6kbps (bzw. 115.2kbps). Diese Angabe folgt am Ende der jeweiligen Konfigurationszeile.

Einstellung des Handshake:
Stty - setze terminal charakteristika
Wenn Ihr Modem den Hardware-Handshake unterstützt, sollten Sie sicherstellen, daß dieser auch aktiviert ist. Überraschenderweise versuchen die wenigsten Kommunikations-Programme dies einzustellen, weshalb Sie es unter Umständen per Hand tun müssen. Das geschieht am besten auch im serial-Script, indem Sie stty so aufrufen:
$ stty crtscts < /dev/ttys1

Hier ein vollständiges Script für eine VScom 400L PCI mit den Parametern aus den Beispielen:

        ${SETSERIAL} ttys0 port 0x3f8 irq 4 uart 16550A ^fourport spd_hi
        ${SETSERIAL} ttys1 port 0x2f8 irq 3 uart 16550A ^fourport spd_hi
        ${SETSERIAL} ttys2 port 0xa800 irq 10 uart 16550A baud_base 921600 ^fourport spd_hi
        ${SETSERIAL} ttys3 port 0xa400 irq 10 uart 16550A baud_base 921600 ^fourport spd_hi
        ${SETSERIAL} ttys4 port 0x9c00 irq 10 uart 16550A baud_base 921600 ^fourport spd_hi
        ${SETSERIAL} ttys5 port 0x9c08 irq 10 uart 16550A baud_base 921600 ^fourport spd_hi
        stty crtscts 38400 </dev/ttys0
        stty crtscts 38400 </dev/ttys1
        stty crtscts 38400 </dev/ttys2
        stty crtscts 38400 </dev/ttys3
        stty crtscts 38400 </dev/ttys4
        stty crtscts 38400 </dev/ttys5
        

Für Karten der Turbo- und Pro-Serie verwenden Sie natürlich die eingestellten Parameter.

Die Karten der VScom Turbo - Serie erlauben verschiedene Maximalgeschwindigkeiten. Bei den Serien PRO und PCI sind die Faktoren 1 und 8 möglich. Je nach Konfiguration sind also verschiedene Werte für Baud_base möglich:

Faktor  Baud Base
Alle Karten 115,200 kbps
VScom Turbo, VScom 200 PRO, VScom 100 PRO 230,400 kbps
VScom Turbo, VScom 200 PRO, VScom 100 PRO 460,800 kbps
VScom PCI, VScom PRO (nicht VScom 100 PRO) 921,600 kbps
VScom 100 PRO 12  1,382400 Mbps

Die obigen Einstellungen - insbesondere für die VScom 400 PCI - wurden getestet und übermittelt durch Herrn Stephan Isringhausen-Bley von der Ruhr Universität Bochum. An dieser Stelle noch einmal vielen Dank dafür.

All trademarks and brands are property of their rightful owners.
Copyright © 2005-2024, VS Vision Systems GmbH. All Rights Reserved.