11. Die PC-Schnittstelle

Ähnliche Dokumente
2. Installierung und Einbau

A20_PCI. ARCNET Controller Karte für PCI Bus. Gerätebeschreibung TK Systemtechnik GmbH Nr. TK F-1.2

AN025. Application Note 025 zu MODULAR-4 (ML3 und ML5) Messen der CPU-Auslastung im Echtzeitbetrieb

Betriebsanleitung TMU104V

Bedienungsanleitung DD 55 IS. Displaydecoder mit InterBus-S

Applikation Kommunikation mit der PA-CONTROL Touch über ModbusTCP

Schrittmotor Steuer- und Endstufenkarte SMSIPC V8

Der I²C-Bus. Vorstellung des Inter-Integrated Circuit -Bus. Aufbau und Funktionsweise. Beispiel PortExpander am Arduino

RO-Serie CAN-Übertragungsprotokoll

Ein- Ausgabeeinheiten

M-AX-16/C1 (Typ 37) Inhaltsverzeichnis M-AX-16/C1

Name: ES2 Klausur Thema: ARM Name: Punkte: Note:

TCP/IP ASCII Schnittstelle Programmierhandbuch

Guntamatic Dokumentation. WEB-Schnittstelle MODBUS-Schnittstelle

Anbindung eines Forth- Targets an einen Forth-Host. Rechner z.b. PC steuert ein Target System z.b. Evaluation Board

Betriebsanleitung Modbus-Konverter Unigate-CL-RS

Interrupts. Funktionsprinzip. Funktionsprinzip. Beispiel in C

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik

Verwendung des EASY Mode mit Demo FB für SIMATIC Step7

Bedienungsanleitung. für Massenspeichergerät PLC-Mem mit Millenium-Schnittstelle

Schrittmotorsteuerungen GSP, GCD, GLD und IPP

RS485-Relaiskarte v1.0

GCM 100 GRAF-SYTECO H019A00. SYsteme TEchnischer COmmunication anzeigen, bedienen, melden, steuern, visualisieren und zählen

Serielle Datenübertragung mit dem Schnittstellenbaustein 8251

Atmel AVR für Dummies

EX PCI & 2 PCI-E

White Paper. Embedded Treiberframework. Einführung

Kommunikationsprotokoll

Ressourcenübersicht Rack PC 840, Box PC 840

Remote-Debugging Allgemeines 8-1

Dokumentation IBIS Master Version 1.5.6

SC18IM700-Tester v Einleitung

TCP. Transmission Control Protocol

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)

Installation HARDWARE:

Modbus/TCP. Protokoll

XT - NANO - XXL XT-NANO-XXL

Verwenden der Druck- und Zurückhaltefunktion

Microcontroller Programmierung. Ein PDV-Vertiefungsprojekt von: Chr. Schulz, P. Simon und D. Stein Sommersemester 2005 Version 1.0

2. Prinzip der Datenübertragung Vom PC ins Handprogrammiergerät

Übertragung von MoData2 Dateien mit dem mobilen Gerätecenter unter Windows 7

Grundlagen der Rechnerarchitektur. Ein und Ausgabe

PBI200. ProfiBus Gateway PBI200. Handbuch Version 2.2k WÖHWA WAAGENBAU. Wöhwa Waagenbau GmbH

BEDIENUNGSANLEITUNG. ba76147d01 04/2013. MultiLab User PC SOFTWARE ZUR BENUTZERVERWALTUNG

Serieller S-Bus reduziertes Protokoll (Level 1)

Beispiel- Konfigurationsbeschreibung

4.2 Peripherie ansprechen in C/I2C-Bus

EX Slot PCI Box Zur Erweiterung um 4 PCI Anschlüsse für lange Karten inklusive internem 220Watt Netzteil

Flexi Soft Ethernet IP: Implicit Messaging mit einer Omron SPS

PCI VME Interface SIS1100/SIS3100

Drucken und Löschen von angehaltenen Druckaufträgen Erkennen von Formatierungsfehlern Bestätigen von Druckaufträgen Reservieren von Druckaufträgen

Bibliographix installieren

Projekt Zeitbasis. Version 1.1

3 Der Debugger. 3.1 Überblick. 3.2 Einschränkungen

Checkliste für die Behebung des Problems, wenn der PC Garmin USB GPS-Geräte nicht erkennt.

Ringlicht-v3 - Frei konfigurierbares Ringlicht mit RS232 Anbindung. Kurzbeschreibung

Ergänzungen zum Manual OS V 2.05/2.06

Konzeption und Implementierung einer CAN-basierten Gerätesteuerung

Assembler und Hochsprachen

B1 Stapelspeicher (stack)

Schnittstellenbeschreibung. meteocontrol Remote Power Control (RPC)

Der CAN-Bus (Controller Area Network)

Viele Anwender beklagten, das sie die Computer der Finanzbuchhaltung aus Sicherheitsgründen nicht mit einem Internet-Anschluss ausstatten möchten.

automation technologies GmbH PAD-Card Benutzerhandbuch

Protokollbeschreibung Modbus TCP für EMU TCP/IP Modul

Betriebsanleitung Universal Data Manager Modbus-Slave

Seminar Einchipcomputer Ansteuerung von Festplatten über IDE. Christopher Israel

OPC-Server VM OPC. Anleitung. Installation, Konfiguration, Verwendung. Version 1.01

Rechnernutzung in der Physik. Betriebssysteme

Handbuch. SMS-Meldesystem. für EPB 2400 / 800 / 6000 S. Version V 2.2

Kurzbedienungsanleitung Softwareupdate

Programmierung mit NQC: Kommunikation zwischen zwei RCX

Fakultät für Technik Technische Informatik Entwicklung einer Kombinierte Hard-/Software- Schnittstelle zur Anbindung von einfachen Sensoren und

2 x Parallel PCI Karte

INTERPRETER Interface. DATAWIN OMR Serie 10 Serie 50 Serie 300. Programmbeschreibung. Edition _01

DTMF Sender. Es können 252 Zeichen maximal am Stück übertragen werden; die Länge des Strings wird mit einem Byte übertragen.

Spezifikationen für die Datenträgerlöschung mit GDisk

RF-ID Handheld. Einsatz. Bedienung. A&S GmbH Automatisierungs- und Systemtechnik

DIGITALVARIO. Anleitung Bootloader. Ausgabe 0.1 deutsch für Direkt-Digital-Vario. Firmware ab Hardware 01 Seriennummer ab 0003

AVR Web Server. Version 1.1. erstellt von. Ulrich Radig

Berührungslose Datenerfassung. easyident-usb Stickreader. Art. Nr. FS-0012

Beim Programmieren mit MMIX habt ihr vielleicht schon öfter eine der folgenden Fehlermeldungen von MMIXAL bekommen:

KERN YKI-02 Version /2014 D

Installation eines BM-33k6/ISDN pro USB an einem Windows XP-Rechner

Die Software "Cherry SmartDevice Setup" unterstützt das Lesen und Schreiben von Chipkarten für folgende Cherry Produkte:

Bedienungsanleitung. empure KNiX Port Gateway. Einrichtung in der ETS-Software und Montage

Beschreibung: SPEICHER: GRUNDPLATINE AC 1:

Anhang A - Weitere Bibliotheken. Die Bibliothek Mail_02.lib ermöglicht das Versenden von s mit dem Ethernet-Controller

AVR-Mikrocontroller in BASCOM programmieren, Teil 2

Igloo 800. Externes Festplattengehäuse für zwei (2) 3.5 Festplatten

minimon Einfaches CAN-Monitoringtool für Windows

manual_deutsch_ :13 Uhr Seite 1 USB 2.0 FLEXI-DRIVE VALUE - Handbuch -

SIMATIC S7 ASI Beispiel

Datei-Transfer zwischen einem Casio FX-850P / FX-880P und einem Mac mit OS X über das USB-Interface von Manfred Becker und das Terminal-Programm ZTerm

2. Veranschauliche an einem Beispiel, welche Bedeutung die Vernetzung von Computern im öffentlichen, privaten und geschäftlichen Bereich hat.

IRF2000, IF1000 Application Note ModbusTCP API

Go Wireless Connect - Kurzbeschreibung

Inhalt: 1. Layer 1 (Physikalische Schicht) 2. Layer 2 (Sicherungsschicht) 3. Layer 3 (Vermittlungsschicht) 4. Layer 4 (Transportschicht) 5.

C4 Die SPI Schnittstelle

Transkript:

PC-Schnittstelle Funktion -1. Die PC-Schnittstelle.1. Funktion Die folgenden Angaben gelten ohne Einschränkung für den PC, PC-XT, PC-AT, AT-386, AT-486 und kompatible Rechner. Sie sind nur für jene interessant, die eigene PC-Treiber schreiben wollen. Die Kommunikation zwischen beiden Rechnern geschieht standardmäßig über eine parallele Schnittstelle mit den entsprechenden Steuersignalen, sowohl für die Übertragung vom PC zur Multi-LAB/2 Karte als auch für die umgekehrte Richtung. Somit können Befehle und Daten in beiden Richtungen ausgetauscht werden. Nach dem Einschalten des PC und nach einem RESET ist die Multi-LAB/2 Karte nicht bereit. Es muß zunächst ein Betriebssystem auf die Karte geladen werden. Dies kann vom Hilfsprogramm MLC aus oder mit der PC-Bibliothek gemacht werden. Danach ist die Karte bereit, Befehle und Daten vom PC zu empfangen. Die Kommunikation zwischen PC und Karte geschieht ausschließlich über Makrobefehle. Dabei ist der PC grundsätzlich der Master, die Karte der Slave. Das bedeutet, jede Kommunikation wird vom PC aus eingeleitet. Die einzige Möglichkeit für die Karte, selbst aktiv zu werden, besteht darin, daß sie einen sog. Service-Request zum PC sendet. Dies tut sie, indem sie ein Wort (2 Byte) zum PC sendet (mit gesetztem DLP-Bit im Statusregister). Dieses Wort wird üblicherweise (aber nicht zwingend) per Interrupt auf dem PC in Empfang genommen. Am Wort erkennt der PC die Ursache des Service-Requests der Karte und kann entsprechend reagieren. Eine Multi-LAB/2 Karte belegt 8 aufeinanderfolgende Adressen im I/O-Adreßbereich des PC. Die Basisadresse (im folgenden mit "BA" bezeichnet) wird von der Bibliothek automatisch eingestellt. Dieser sog. "Plug and Play"-Mechanismus arbeitet nach einem von SORCUS patentierten Verfahren. Die Übergabe von Daten vom PC an die Multi-LAB/2 Karte geschieht wortweise, nachdem durch Lesen des Status-Registers festgestellt wurde, daß die Schnittstelle frei ist. Das 16 Bit-Wort wird in der Schnittstelle zwischengespeichert, gleichzeitig wird ein Bit im Status-Register gesetzt, dessen Zustand sowohl von der Multi-LAB/2 Karte als auch vom PC gelesen werden kann. Wenn das Wort von der Multi-LAB/2 Karte ausgelesen wird, wird dieses Status-Bit wieder zurückgesetzt. Die Schnittstelle ist damit wieder frei zur Übertragung des nächsten Wortes.

-2 PC-Schnittstelle Funktion Das Betriebssystem auf der Multi-LAB/2 Karte versteht das Low-Byte (= 1. Byte) des ersten Wortes einer Übertragung als Befehlscode. Daraus ergibt sich der Typ des Befehls. Das High-Byte (= 2. Byte) des ersten Wortes ist ein Format-Byte und gibt einen Hinweis auf die Anzahl der noch folgenden Byte des Befehls und darauf, ob der Befehl eine Antwort von der Karte erwartet. Auch das Format der Antwort ist im Format-Byte codiert. Nachdem der gesamte Befehl übertragen ist, wird überprüft, ob er gültig ist. Ist das nicht der Fall, erfolgt eine Fehlermeldung durch Senden eines Codes (ein Wort) zurück an den PC. Ist der Befehl gültig, wird er ausgeführt. Falls bei der Ausführung ein Fehler auftritt, wird ebenfalls eine Fehlermeldung (ein Wort) zum PC zurückgesendet. Wurden durch den Befehl Daten von der Multi-LAB/2 Karte angefordert, so ist der Ablauf der gleiche wie gerade beschrieben. Im Falle einer Fehlermeldung ist der Befehl damit abgeschlossen, es werden also keine evtl. fehlerhaften Daten von der Multi-LAB/2 Karte zurückgegeben. Konnte der Befehl erfolgreich ausgeführt werden, dann wird zunächst der ursprüngliche Befehlscode (das Low-Byte des ersten Wortes des Befehls) und danach die angeforderten Daten zum PC zurückgesendet.

PC-Schnittstelle PC-I/O-Adressen -3.2. Die I/O-Adressen aus der Sicht des PC Die Basisadresse (BA) für die Multi-LAB/2 Karte wird automatisch entsprechend der auf der Karte eingestellten Kartennummer eingestellt. Die Angaben in der Spalte "R/W" zeigen die erlaubten Zugriffe an, ein angehängtes "x" bedeutet, daß die gelesenen bzw. geschriebenen Daten ungültig bzw. ohne Bedeutung sind: 8 = nur Byte-Zugriff erlaubt 16 = nur Wort-Zugriff erlaubt W = nur Schreibzugriffe erlaubt R = nur Lesezugriffe erlaubt RW = Schreib- und Lesezugriffe erlaubt x = gelesene bzw. geschriebene Daten sind ohne Bedeutung I/O-Adr. Zugriff Erklärung zu Data BA+0 R8 Status der PC-Schnittstelle lesen (Erklärung siehe nächste Seite) BA+2 R16 Lesen von Daten, die von der Multi-LAB/2 Karte zum PC gesendet wurden. Gleichzeitig wird im Status-Register Bit 7 (RBF) = 0 gesetzt. DLM und DLP bleiben unverändert. BA+2 W16 Schreiben von Daten an die Multi-LAB/2 Karte. Gleichzeitig wird im Status-Register Bit 0 (= TBF) =1 gesetzt. Wenn die Karte das Datenwort liest, wird Bit 0 wieder = 0 gesetzt. DLM und DLP bleiben unverändert. BA+3 W8x Hardware-Reset der Multi-LAB/2 Karte. DLM und DLP werden = 0 gesetzt. BA+4 W8x Rücksetzen von DLM (DLM = 0) BA+5 W8x Setzen von DLM (DLM = 1) BA+6 W8x Rücksetzen von DLP (DLP = 0) BA+5 R8 Zustand der PC-Interrupt-Leitungen lesen Bit 0: IRQ-3, Bit 1: IRQ-5, Bit 2: IRQ-9, Bit 3: IRQ-10, Bit 4: IRQ-, Bit 5: IRQ-12, Bit 6: IRQ-15, Bit 7: reserviert (nicht definiert) BA+4 R8 Zustand der PC-DMA-Leitungen lesen Bit 0: DRQ-0, Bit 1: DAK-0, Bit 2: DRQ-1, Bit 3: DAK-1, Bit 4: DRQ-3, Bit 5: DAK-3 Bit 6 und 7: reserviert (nicht definiert)

-4 PC-Schnittstelle Status-Register Die Beschreibung der Schnittstelle bezieht sich auf eine Bestückung der Multi-LAB/2 Karte mit einem Gate-Array für IC16 mit der Version 4/n (siehe Prüfbericht). Dies ist die Standardbestückung. Durch Austausch dieses ICs gegen ein anderes Gate-Array können zusätzliche und andere Funktionen der PC-Schnittstelle der Multi-LAB/2 Karte erreicht werden..3. Das Status-Register (8 Bit) Lediglich Bit 0, 1, 6 und 7 werden zur Zeit verwendet. Die übrigen Bit liefern beim Lesen ein nicht definiertes Ergebnis. Bit 0: Bit 1: Status-Bit (PC-TBF) für die Schnittstelle vom PC zur Multi-LAB/2 Karte: 0 = Schnittstelle ist frei 1 = Schnittstelle nicht frei Device-Locking-Bit Multi-LAB/2 (DLM): Flag, das vom PC aus gesetzt bzw. gelöscht werden kann (s.o.). Es kann bei Multi-Tasking-Betrieb auf dem PC, z.b. unter UNIX, OS/2 oder Windows verwendet werden, um die Multi-LAB/2 Karte für andere PC-Tasks zu blockieren. Der Zustand dieses Bit kann auch von der Multi-LAB/2 aus abgefragt werden. Bit 2 bis Bit 4: Zur Zeit nicht verwendet, undefinierter Zustand Bit 5: Betriebsart der Karte: 0 = Bootmodus 1 = Running Bit 6: Bit 7: Device-Locking-Bit PC (DLP): Flag, das von der Multi-LAB/2 Karte aus gesetzt bzw. gelöscht werden kann. Es kann bei Multi-Tasking-Betrieb auf der Karte verwendet werden, um die Schnittstelle zum PC für andere Tasks auf der Karte vorübergehend zu blockieren. Der Zustand dieses Bit kann also auch von der Karten-Seite abgefragt werden. Zur Zeit wird dieses Bit verwendet, um bei Meldungen von der Karte zwischen der Antwort auf einen Makrobefehl (DLP = 0) und Service-Request (DLP = 1) oder Fehlermeldungen (DLP = 1) zu unterscheiden. Wenn DLP = 1 ist, wird das vom PC aus mit einem speziellen Makrobefehl quittiert und dadurch wieder DLP = 0 gesetzt. Status-Bit (PC-RBF) für die Schnittstelle von der Multi-LAB/2 Karte zum PC: 0 = Schnittstelle ist leer 1 = Schnittstelle enthält ein Byte/Wort

PC-Schnittstelle Kommunikationsbeispiel -5.4. Beispiel für eine einfache Kommunikation Die Multi-LAB/2 Karte soll den Zustand der Kontroll-LED (on-board LED) ermitteln und das Ergebnis an den PC übergeben. (BA = Basisadresse der Multi-LAB/2 Karte) Schritt 1: Schritt 2: Schritt 3: Status-Register lesen (I/O-Adresse = BA+0). Bit 0 = 1: Schritt 1 wiederholen. Bit 0 = 0: die Multi-LAB/2 Karte ist bereit, ein Wort zu empfangen. Schreiben des Wortes 2033h an I/O-Adresse BA+2 (Low-Byte = 33h: Befehlscode für Lesen des Zustands der LED, High-Byte = 20h: Format-Byte). Status-Register lesen und PC-RBF prüfen Bit 7 = 0: es liegt noch keine Antwort vor, Schritt 3 wiederholen. Bit 7 = 1: es liegt eine Antwort von der Karte vor. Schritt 4: Bit 6 (DLP) im Status-Register = 1: Es handelt sich um eine Fehlermeldung oder ein Service-Request von der Karte, also nicht um die Antwort auf den Makrobefehl, weiter mit spezieller Fehlerbehandlungsroutine. Schritt 5: Fall 1: Fall 2: Bit 6 (DLP) im Status-Register = 0: Es liegt die Antwort auf den Makrobefehl vor. Weiter bei Schritt 5. Lesen und Auswerten der Antwort (I/O-Adresse = BA+2) Das Low-Byte (gilt immer als erstes Byte) entspricht dem ursprünglichen Befehlscode 33h. Somit wurde der Befehl erfolgreich ausgeführt. Das High-Byte der Antwort (gilt immer als zweites Byte) gibt die Antwort, also den Zustand der LED (wenn das Byte = 0 ist, leuchtet die LED nicht). Der Befehl und die Kommunikation sind damit beendet. Das Byte entspricht weder dem ursprünglichen Befehlscode noch einem Fehlercode. Es liegt wahrscheinlich das Ergebnis eines früheren Befehls vor. Am Byte kann der Ursprung der Daten erkannt werden.