Entwurf und Inbetriebnahme einer Entwicklungsplatine für PIC-Controller mit USB-Schnittstelle

Größe: px
Ab Seite anzeigen:

Download "Entwurf und Inbetriebnahme einer Entwicklungsplatine für PIC-Controller mit USB-Schnittstelle"

Transkript

1 Entwurf und Inbetriebnahme einer Entwicklungsplatine für PIC-Controller mit USB-Schnittstelle STUDIENARBEIT für das 5. Studiensemester an der Berufsakademie Lörrach Studiengang Elektrotechnik von Boris Farnung Januar 2007 Bearbeitungszeitraum Kurs TEL04 Ausbildungsfirma Wagner & Co Solartechnik GmbH Betreuer der Berufsakademie Dipl.-Ing. Edgar Laile

2 Inhaltsverzeichnis 1 Einleitung Hardware Der Universal Serial Bus USB Hardware und Bustopologie Leitungskodierung Pakete und Transaktionsphasen Transaktionen Transfers Aufbau einer Verbindung - Enumeration Der Microcontroller PIC18F Software PIC Firmaware USB_IO Funktionen von USB_IO Deskriptoren: Windows Anwendung USB_IO Zusammenfassung Literaturverzeichnis I

3 1 Einleitung Abstract The aim of this paper is to develop a device that can communicate via the Universal Serial Bus (USB) with the PC. The background is that the USB has already established itself as a serial standard with the cause that the availability of RS232 ports is retrogressive in common PCs and in Embedded Systems. This assignment involves the use of an application that is normally used for the communication via RS232 and a terminal program. Using this application with USB will show the possibilities and problems in the implementation of devices with USB. The USB device is based on the 18F2550 Controller by Microchip. It has an integrated USB 2.0 interface and supports the low and full-speed mode. Einleitung Ziel der Studienarbeit war es ein Gerät zu entwerfen, das über den Universal Serial Bus (USB) mit dem PC Kommunizieren kann. Hintergrund ist, dass sich der USB inzwischen als serieller Standard etabliert hat, mit der Folge, dass die Verfügbarkeit von RS232-Schnittstellen an PC-Systemen und auch bei Embedded Systemen rückgängig ist. Diese Arbeit beschäftigt sich mit der Umsetzung einer Anwendung, die klassisch für die Kommunikation über ein Terminalprogramm und RS232 Schnittstelle ist, jedoch mit USB realisiert wurde. Damit sollen die Möglichkeiten und Probleme bei der Realisierung von Geräten mit USB aufgezeigt werden. Das USB-Gerät basiert auf dem 18F2550 Controller von Microchip. Dieser hat ein integriertes USB 2.0 Interface und unterstützt den Low- und Full-Speed Mode. 1

4 Aufgabenbeschreibung: Einarbeitung in den USB-Standard sowie in die von Microchip bereitgestellten Informationen zu den Controllern. Erste Inbetriebnahme der Controller auf dem vorhandenen PICDEM2-Board. Konzept, Entwurf und Herstellung einer Entwicklungsplatine mit USB-Schnittstelle. Inbetriebnahme der Platine anhand einer Beispiel-Applikation (Beschreiben und Lesen eines seriellen EEPROMS) mit Kommunikation zum PC per USB. 2

5 2 Hardware 2.1 Der Universal Serial Bus USB Der Universal Serial Bus, kurz USB, wurde von Intel für den Anschluss von Peripheriegeräten an den PC entwickelt wurde die erste Spezifikation mit der Unterstützung mehrerer Firmen formuliert und kostenlos für Jedermann zugänglich gemacht. Bis heute sind zwei weitere Spezifikationen 1.1 und 2.0 hinzugekommen. Alle Spezifikationen sind abwärtskompatibel und unterscheiden sich im Wesentlichen durch ihre Übertragungsraten. Ein Host, der nach der Spezifikation 2.0 entwickelt wurde, kann mit einem Device der 1.1 Version kommunizieren. Umgekehrt kann ein Host, der nach einer niedrigen Spezifikation entwickelt wurde, mit Geräten der neusten Generation kommunizieren. Die Übertragungseigenschaften werden in beiden Fällen durch die ältere Spezifikation bestimmt. Für die Entwicklung von einem USB Device mit der entsprechenden Hard- und Software, sollte man zumindest einen Überblick über die in der Spezifikation festgelegten Eigenschaften haben. Als Übersicht dient das hier abgebildete Schichtenmodell, das im Folgenden, von der Hardwareschicht hin zur Applikationsschicht, erklärt werden wird. [1] 3

6 2.1.1 Hardware und Bustopologie Der USB verbindet die USB Devices mit dem USB Host. Der Host besteht aus dem Host-Controller, der Systemsoftware sowie den erforderlichen Treibern und der eigentlichen Software für den Anwender. In einem USB darf es nur einen Host geben. An ihn werden Devices bzw. Hubs sternförmig angeschlossen. Alle Devices haben eine einheitliche Schnittstelle, über die sie mit dem Host kommunizieren. Sie beinhalten Informationen für den Host über ihre Eigenschaften und ihre eigentlichen Funktionen. An einen Hub können weitere Devices sternförmig angeschlossen werden. Die max. Anzahl der an einen Host anzuschließenden Devices ist auf 127 begrenzt und es dürfen max. 5 Hubs hintereinander geschaltet werden. Unabhängig davon, ob ein Device an einen Hub oder direkt an den PC angeschlossen ist, spricht der Host mit den Devieces als wären sie direkt an den Root Port angeschlossen. Abbildung 2-1: Bustopologie[1] Der USB ist ein Bus, bei dem die Daten seriell in Form von differentiellen Signalen auf zwei Datenleitungen übertragen werden. D.h. auf der einen Leitung wird das Signal unverändert, auf der anderen Leitung invertiert übertragen und der Empfänger bildet die 4

7 Differenz aus den zwei Pegeln. Insgesamt besteht ein USB Kabel aus vier Leitern. Die Leitungen D+ und D- sind verdrillt und dienen zur Datenübertragung. Eine differentielle 1 liegt vor, wenn die Differenz aus den Pegeln D+ und D- größer als 200mV ist. Eine differentielle Null, wenn die Differenz größer als -200mv ist. Mit den anderen zwei Leitungen ist eine 5V Spannungsversorgung realisiert, so dass angeschlossene Peripheriegeräte, die mit einer geringen Leistung (max. 2,5 Watt) auskommen, über den Bus Spannungsversorgt werden können. PIN Farbe Funktion 1 Rot VCC; Spannungsversorgung 2 Weiß D-; negative Datenleitung 3 Grün D+; positive Datenleitung 4 Schwarz GND; Tabelle 2-1: Pinbelegung Für die Verbindung per USB verwendet man genormte, verpolungssichere Steckverbindungen. Man unterscheidet dabei zwischen verschiedenen Stecker und Buchsen Typen. Standardmäßig werden für die Verbindung zum PC bzw. Host Stecker vom Typ A verwendet und für die Verbindung zum Device Stecker und Buchse vom Typ B. Abbildung 2-2: Pinbelegung USB-Typ-A Abbildung 2-3: Pinbelegung USB-Typ-B 5

8 Ein USB besteht immer aus einem Master, dem sogenannten Host, und bis zu 127 Slaves. Alle diese 127 Devices werden direkt oder über Hubs an den Host angeschlossen. Der Host besteht aus einem Host-Controller und einem Root-Hub. Der Hostcontroller ist das Verbindungsglied zwischen der Softwareschicht und der Bitübertragungsschicht. Er stellt beiden Schichten die Daten im richtigen Format zur Verfügung. Der Root Hub detektiert zusammen mit dem Host-Controller, ob Geräte an den Bus angeschlossen oder entfernt wurden, und zusätzlich überträgt er Daten zwischen Host-Controller und Peripheriegeräten. Die ersten Spezifikation sah eine Übertragungsrate von 1,5MBit/s (Low-Speed) vor und die darauffolgende Spezifikation 1.1 eine Übertragungsrate von 12MBit/s (Full-Speed). Die aktuelle Spezifikation 2.0 weist Datenraten bis zu 480MBit/s (High-Speed) vor, jedoch ist die tatsächliche Übertragungsrate wegen der zusätzlichen Übertragung von Nutz-, Status- und Steuersignalen geringer. 6

9 2.1.2 Leitungskodierung Die Kodierung dient der Übertragung von Bitmustern über die Leitungen. In der Spezifikation von USB ist die Non Return to Zero Inverted (NRZI) Methode als Standard definiert. Bei der NRZI-Methode sind keine logischen Einsen und Nullen in Form von Pegeln definiert. Hier wird eine Eins durch einen gleichbleibenden Signalpegel und eine Null durch eine Änderung der Polarität des Pegels realisiert. Jede Null hat also eine Spannungsänderung auf dem Bus zur Folge. Bei einer Eins bleibt der Pegel jedoch gleich. Wird eine Folge von Einsen gesendet, wird nach der sechsten Eins eine Null als Füllbit eingefügt. Dieser Füllbit hat einen Pegelwechsel zur Folge. Da die Geräte sich beim NRZI mit Hilfe der Übergänge synchronisieren, könnte die Übertragung ohne entsprechende Füllbits zu Fehlern führen, weil die Taktraten der kommunizierenden Geräte nicht mehr übereinstimmen. Die über den Bus gesendeten Bytes beginnen immer mit dem niederwertigsten und endet mit dem hochwertigsten Bit. Man spricht dabei auch von Little Endian. Full Speed Zustand D+ D- Idle High Low J High Low K Low High SE0 Low Low Tabelle 2-2: Full Speed Buszustände 7

10 2.1.3 Pakete und Transaktionsphasen Die Kommunikation auf dem Bus erfolgt über Pakete, deren Aufbau im Folgenden beschrieben wird. Synchronisationsfeld - SYNC: Alle Pakete beginnen mit einem Synchronisationsfeld. Dieses besteht aus einer Folge von Nullen, deren Länge abhängig von der gewählten Übertragungsrate ist. Bei Full- und Low-Speed Kommunikation besteht es aus 8 Bit, bei der High-Speed Kommunikation aus 32Bit. Abgeschlossen wird das SYNC-Feld durch eine Eins. Durch die Folge von Nullen kommt es mit jedem Takt zu einem Zustandswechsel. Der so erzeugte Takt wird von dem Gerät, an das die Daten gesendet werden sollen, genutzt um seinen Takt mit dem des Sendenden Geräts abzugleichen. Paket Identifikation PID: Das PID-Feld ist Bestandteil jedes gesendeten Pakets und folgt unmittelbar nach dem SYNC-Feld. Das PID Feld gibt Auskunft über den Typ des Pakets und welche Daten oder Informationen das Paket enthält. Dieses Feld besteht aus 8 Bit, von denen die ersten vier Bit die eigentliche ID darstellen und die folgenden vier das Einserkomplement der ID zur Fehlerprüfung. Stimmen die Felder nicht überein, wird das Paket vom Empfänger ignoriert. In der folgenden Tabelle sind alle 16 möglichen Packet IDs aufgeführt. Sie sind eingeteilt in Token, Data, Handshake und Special und die beiden niederwertigsten Bits weisen sie einer Gruppe zu. Typ Name Wert Verwendet in Transfertyp Beschreibung Token OUT 0001 Alle Endpunktadresse für Host-Gerät-Transaktion IN 1001 Alle Endpunktadresse für Gerät-Host-Transaktion SOF 0101 Start of Frame SETUP 1101 Control Start-of-Frame-Markierung und Frame- Nummer Endpunktadresse für Gerät-Setup- Transaktion Data DATA Alle Data-Toggle, Datenabfolge DATA Alle Data-Toggle, Datenabfolge DATA Isochron Datenabfolge 8

11 MDATA 1111 Handshake ACK 0010 Alle NAK 1010 Alle STALL 1110 NYET 0110 Special PRE 1100 ERR 1100 Alle SPLIT 1000 Alle PING 0100 Isochron, Interrupt Control, Bulk, Interrupt Control Write, Bulk OUT, Split- Transaktionen Control, Interrupt Control, Write, Bulk OUT Datenabfolge Empfänger nimmt fehlerfreies Datenpaket an Empfänger kann Daten nicht annehmen oder Sender kann Daten nicht senden oder hat keine Daten zum Senden Ein Control-Request wird nicht unterstützt oder der Endpunkt wurde angehalten Das Gerät nimmt fehlerfreies Datenpakete an, kann aber noch keine weiteren annehmen oder der Hub hat die Daten noch nicht fertig aufgeteilt. Vom Host ausgegebene Präambel. Weist darauf hin, dass ein LOW-Speed-Paket folgt. Vom Hub zurückgegeben, um auf einen Low-Speed- oder Full-Speed-Fehler in einer Split-Transaktion hinzuweisen. Geht einem Token-Paket voraus, um auf Split-Transaktionen hinzuweisen. Prüft bei Bulk-OUT-Transfers, ob ein Gerät noch beschäftigt ist und steuert schreibende Datentransaktionen nach NYET Tabelle 2-3: Packet Identifier[2] Adressfeld ADDR: Das Adressfeld enthält die Adresse des Device, mit dem der Host kommunizieren will. Diese Adresse ist zunächst Null, wird aber in der Konfigurationsphase vom Host neu Vergeben. Die Adresse hat 6 Bit, d.h. es können max.127 Adressen vergeben werden. Endpointfeld ENDP: Jeder Device muss eine Verbindung zum Endpunkt Null unterstützen, da diese zu Konfigurationszwecken genutzt wird. Alle anderen Endpunkte sind normalerweise direkt bestimmten Funktionen zugeordnet, d.h. die Daten vom Host werden direkt an eine entsprechende Funktion gesendet. Das entspricht in etwa dem Port beim TCP/IP. Die Anzahl der Endpoints ist flexibel und wird in Abhängigkeit von der Übertragungsart beschränkt. Für die Nummerierung stehen 4 Bit zur Verfügung, d.h. 9

12 das maximal 16 Endpoints (ENDP 0 eingeschlossen) genutzt werden können. Low Speed Devices unterstützen allerdings max. 3 Endpoints. Frame Nummer Feld FRAME NUMBER: Das Frame Number Feld enthält 11 Bit, mit denen der Host die einzelnen Frames nummerieren kann. Mit jedem Frame wird die Zahl um eins erhöht aber nur bis 0x7FF. Dann fällt sie auf Null zurück. Bei einer High Speed Übertragung besteht der Zähler aus 14 Bit, dabei wird aber nur Bit 3 bis 13 Übertragen. Infolgedessen haben immer 8 aufeinanderfolgende Frames die gleiche Nummer. Die Frame Number wird nur im Startpaket jedes Frames gesendet. Daten Feld DATA: Die Größe des Datenpakets variiert mit der Übertragungsart. Maximal können aber in einem Paket 1024 Bytes, bzw. mit der USB Version 1.x max Bytes, übertragen werden. Cyclic Redundant Chek Field CRC: Das CRC-Feld wird genutzt um alle Felder zu Prüfen, mit Ausnahme des SYNC, PID und EOF. Für Adress- und Endpunktfeld werden 5 Bit genutzt und für das Datenfeld 16 Bit. Die Entsprechenden Prüfbits werden auf Hardwareebene hinzugefügt und auch wieder entfernt und müssen nicht im Programm erzeugt werden. Deshalb wird im Folgenden nicht weiter darauf eingegangen. 10

13 2.1.4 Transaktionen Es gibt die drei Transaktionstypen, SETUP, IN und OUT, welche jeweils die Transaktionsphasen Token, Data und Handshake beinhalten können Die Transaktionstypen sind durch ihren Zweck und die Richtung des Datenstroms definiert. Setup dient zum Verbindungsaufbau mit einem Gerät, IN und OUT zum Empfangen und Senden von Daten. Zu jeder Transaktion gehört mindestens eine Tokenphase. Die Phasen wurden schon beim Packet PID eingeführt. Jede Phase setzt sich zusammen aus ein oder mehreren Paketen mit definiertem Format. Der Pakettyp wird über den Paket Identifier PID erkannt. Tokenphase: Die Tokenphase wird u.a. genutzt um den Anfangspunkt eines Frames zu markieren (SOF). Ein Start of Frame Paket wird vom Host im Low und Full Speed Mode alle 1ms, im High Speed Mode alle 125µs ausgegeben. In der Abbildung 2-4 wurde die Full Speed Kommunikation auf einer Datenleitung mit einem Oszilloskop aufgezeichnet. Man seiht, dass ziemlich exakt jede ms ein SOF Pakt gesendet wird. Abbildung 2-4: Folge von Start-of-Frames Ein SOF besteht wie jedes Paket aus den Feldern SYNC, PID und EOP. Zusätzlich wird die Frame Number und die Prüfsumme übertragen. Die Abbildung 2-5 zeigt den Aufbau eines SOF Pakets mit den entsprechenden Feldern. Tokenpakete können sowohl vom Typ SOF, IN oder OUT, als auch vom Typ Setup sein. Als Zusätzliche Felder kommen das ADDR und das ENDP-Feld mit ihrer Prüfsumme hinzu. Token Pakete kann nur der Host senden. 11

14 1µs SEO Idle Sync PID Frame-Nr. CRC5 EOP Start of Frame Abbildung 2-5: Start of Frame Paket Datenphase: In der Datenphase können Daten zwischen Host und Device ausgetauscht werden. Die Daten müssen immer in ganzen Bytes übertragen werden. Die maximale Anzahl von zu übertragenden Bytes ist wieder abhängig von der Übertragungsart und dem Transfertyp. Low Speed Geräte können max. 8 Bytes, Full Speed Geräte 1023 Bytes und High Speed Geräte max Bytes in einem Datenpaket übertragen. Handshakephase: Ein Handshakepaket besteht nur aus SYNC, PID und EOP und kann in der Handshakephase oder der Datenphase anstelle von Daten für den Report von Datenübertragungen genutzt werden, z.b. für eine Empfangsbestätigung, Flusskontrolle oder Ablehnung. Die Entsprechenden Hanshaketypen sind in der Tabelle der Paket Identifier aufgeführt. 12

15 Abbildung 2-6: Auflösung eines Token-Pakets In der Abbildung 2-6 wurde beide Datenleitungen mit einem Oszilloskop aufgenommen. Man erkennt die Drei Phasen SOF, IN und Handshake. Die ersten zwei Phasen sind vom Host gesendet worden und in der dritten Phase gibt das Gerät zurück, dass keine Daten zum Versenden vorliegen. 13

16 2.1.5 Transfers Die Kommunikation zwischen Host und Device ist im Prinzip der Austausch von Daten-Puffern. Ein Device hat bis zu 30 Endpoints (EP) die entweder als Puffer für Empfangene oder als Puffer für zu sendende Daten dienen. Der Host kann aus diesen EP lesen oder in sie schreiben. Damit das möglich wird muss jeder EP eindeutig Adressiert sein, damit der Host direkt darauf zugreifen kann. Zudem kann jeder EP nur als Sende- oder Empfangspuffer definiert sein, nicht aber als Sende- und Empfangspuffer. Eine Ausnahme stellt der EP0 dar. Er ist unidirektional und wird benötigt um während dem Control-Transfer die anderen EP zu konfigurieren. Wurde einem EP eine eindeutige Adresse vom Host zugewiesen, wird dieser mit der entsprechenden Anwendung bzw. einer darin enthaltenen Funktion verknüpft. Man spricht von so genannten Pipes oder Kanälen, die die EP eines Gerätes mit dem Host verbinden. Für die Konfiguration müssen alle Geräte über eine Standard-Control-Pipe zum EP0 verfügen. Abbildung 2-7: Logischer Aufbau der Verbindungen [1] 14

17 Die Kommunikation zwischen Host und Device kann also in die zwei Kategorien Konfigurationsabfrage und Anwendungskommunikation eingeteilt werden. In der Konfigurationsabfrage wird die Verbindung zwischen Host und Device aufgebaut und in der Anwendungskommunikation werden Daten zwischen den beiden Geräten ausgetauscht. Eine Übersicht über die Transferarten ist in der Tabelle zu sehen. Transferart Control Bulk Interrupt Isochron Typische Anwendung Konfiguration Drucker, Scanner Maus, Tastatur Audio Erforderlich? Ja Nein Nein Nein Bei Low-Speed-Geräten erlaubt Pro Pipe max. mögliche Datenbytes/Millisekunde Full-Speed Richtung des Datenstroms Reservierte Bandbreite für alle Übertragungen des Typs Ja Nein Ja Nein 832 Byte 1216 Byte 64 Byte 1023 Byte IN und OUT 10 bei Lowund Full- Speed; 20 bei High-Speed IN oder OUT Keine IN oder OUT IN oder OUT Max. 90 bei Low/Full- Speed, max. 80 bei High- Speed (interrupt und isochron zusammen) Fehlerkorrektur? Ja Ja Ja Nein Garantierte Übertragung? Nein Nein Nein Ja Garantierte Latenzzeit? Nein Nein Ja Ja Tabelle 2-4:Übersicht Transferarten[2] Control-Transfer Der Controltransfer entspricht der Konfigurationsanfrage, über die sich der Host über die Anforderungen eines neu angeschlossenen Geräts informieren kann, um eine entsprechende Verbindung auf zu bauen. Für die Konfigurationsanfrage wird immer die Standard-Pipe zum Endpunkt 0 genutzt. Für die Konfiguration sind max. die drei Abschnitte Setup, Data und Status definiert. Während dem Setup sendet der Host die Anforderungen an den angeschlossenen Device. Insgesamt gibt es elf in der USB- 15

18 Spezifikation definierte Standardanforderungen, auf die Antworten mit unterschiedlichen Informationen vom Device erwartet werden. Im Data-Abschnitt können Daten ein beide Richtungen übertragen werden. Die Richtung muss aber zuvor definiert werden und kann in einem Abschnitt nicht gewechselt werden. Ob überhaupt Daten ausgetauscht werden, wird schon im Setup-Abschnitt festgelegt. Der Status- Abschnitt entspricht dem Handshake. Hier kann der Device melden, wenn er Daten in den vorhergehenden Abschnitten fehlerhaft oder nicht enthalten hat. Gibt ein Device kein Handshakepaket zurück, versucht der Host es noch zweimal, bevor er die Kommunikation abbricht und eine Information ausgibt. Das Entsprechende Flussdiagramm zum Control-Transfer zeigt die Abbildung 2-8. Abbildung 2-8: Flussdiagramm Control-Transfer [1] Interrupt-Transfer Interrupt-Transfers werden eigentlich eingesetzt, um Daten innerhalb einer gewissen Zeitspanne zu übertragen. In der Studienarbeit wurde der Interrupt-Transfer zur Realisierung des Ziels eingesetzt. Windows enthält Treiber, mit deren Unterstützung HID Geräte aus Anwendungen angesprochen werden können. Das Entwickelte Board kann also ohne die Installation von zusätzlichen Treibern an einen PC angeschlossen werden. 16

19 Die tatsächliche Übertragung per Interrupt-Transfer entspricht nicht dem, was man sich allgemein darunter vorstellt, wenn man an Interrupts denkt. Wie bei allen anderen Transferarten auch, muss der Host den Device nach Daten abfragen, d.h. pollen. Im Endpoint Descriptor wird definiert in welchen Abständen der Host nach neuen Daten prüfen soll. Beim Interrupt-Transfer kommt es also zu keinem Hardware-Interrupt. Garantiert wird beim Interrupt-Transfer nur, dass Daten in einem definierten Zeitraum übertragen werden. Der Transfer selbst besteht aus ein oder mehreren IN oder OUT Transaktionen. Abbildung 2-9: Flussdiagramm Interrupt-Transfer [1] Der Interrupt-Transfer endet, wenn das DATA-Packet kleiner ist als die maximal Größe, die übertragen werden kann oder wenn die angeforderte Datenmenge übertragen wurde. Mit einem Datenpaket können bei Low Speed max. 8 Byte, bei Full Speed 64 und bei High Speed 1024 Byte übertragen werden. Ist die zu sendende Datenmenge größer wird sie auf mehrere Transaktionen aufgeteilt. Pro Frame kann maximal nur eine Interrupt Transaktion stattfinden. Das heißt ein 256 Byte großes Datenpaket wird auf 4 Frames aufgeteilt und braucht mindestens 4ms. 17

20 Abbildung 2-10: Aufzeichnung einer Datenübertragung Bulk-Transfer Der Bulk-Transfer ist in erster Linie für den zeitunkritischen Austausch von großen Datenmengen geeignet. Die Übertragung ist ähnlich wie beim Interrupt-Transfer nur dass innerhalb eines Full Speed Frames bis zu 19 Bulk-Transfers mit je 64 Byte ausgeführt werden und nicht nur eine Transaktion. Für den Bulk-Transfer wird vom Host keine Bandbreite reserviert, so dass nur Daten übertragen werden, wenn der Bus nicht von Control-, Interrupt- oder Isochronen-Transfers belegt ist. Der Bulk-Transfer kann allerdings nur für die Full- und High-Speed Kommunikation genutzt werden Isochrone Transfers Der Isochrone Transfer ist für zeitkritische Daten konzipiert. Bei diesem Übertragungstyp wird kein Handshake durchgeführt und fehlerhaft übertragene Daten werden nicht wiederholt. Gewährleistet ist, dass die Daten mit einer konstanten Übertragungsrate und einer festen Anzahl von Daten pro Frame, gesendet werden. 18

21 2.1.6 Aufbau einer Verbindung - Enumeration Wird am Host ein neues Gerät angeschlossen, muss eine Verbindung zwischen beiden Geräten ausgehandelt werden. Dazu wird zunächst geprüft, welche Übertragungsrate das Gerät unterstützt, bevor das Gerät dann geresetet wird und in den Default-Zustand wechselt. In diesem Zustand kann der Host über den Control-Transfer und der Standardadresse 0x00, sowie dem Endpoint 0, kommunizieren. Über die hergestellte Verbindung kann der Host dem Gerät jetzt eine eigene eindeutige Adresse zuordnen. Nach dieser Zuordnung kommuniziert der Host mit dem Gerät nur noch über diese Adresse. Diese Adresse bleibt dem Gerät zugeordnet, bis es vom Bus getrennt wird oder das System zurückgesetzt wird. Als nächstes muss der Host sich über die Eigenschaften des angeschlossenen Geräts informieren. Dazu werden die Deskriptoren ausgelesen. Die Deskriptoren sind Teil der Firmware des Devices, weshalb auf deren Inhalt in Kapitel 3 näher eingegangenwird. Sie Enthaltenen Informationen über die Eigenschaften und Funktion des Gerätes. Für die darauffolgende Kommunikation werden die gewonnenen Informationen verwendet. Hat der Host alle nötigen Informationen zusammen, ordnet er dem Gerät einen Treiber zu und läd diesen. Der Treiber Ruft die Konfiguration des Geräts ab und stellt seine entsprechend ein. Damit ist das Gerät am Bus angeschlossen und kann entsprechend der Konfiguration genutzt werden. 19

22 2.2 Der Microcontroller PIC18F2550 Dieses Kapitel beschränkt sich auf die USB Funktion des PIC 18F2550. Die PIC Familie 18FX550 und 18FX455 haben eine Serial Interface Engine (SIE) mit einem nachgeschalteten Transceiver, so dass ein Host direkt angeschlossen werden kann. Die SIE unterstützt USB 2.0 mit den Übertragungsraten Low- und Full Speed. Wird das USB Modul aktiviert, werden die Bänke 4 bis 7 des internen Datenspeichers des PIC als Puffer verwendet. Der reservierte Datenspeicher kann für die Endpoints verwendet werden, die über die Buffer Descriptoren (BD) vom Anwender frei Einstellbar sind. Die Bank 4 ist reserviert für den Endpoint 0 der während der Konfigurationsphase vom Host genutzt wird. Drei Kontrollregister dienen zur Konfiguration des gesamten USB Moduls und weitere 22 Register werden für die Kommunikation über USB genutzt. Weitere Informationen zu den einzelnen Funktionen können dem Datenblatt entnommen werden. Abbildung 2-11: Pinbelegung PIC18F2550 [3] Einige Besonderheiten sind bei der Wahl des Oszillators zur Taktversorgung von Controller zu beachten. Bei einer USB Full Speed Datenübertragung muss ein Takt von 48Mhz zu Verfügung stehen, für den Controller ist eine entsprechend hohe Taktrate aber unter umständen nicht erwünscht. Der USB Takt von 48Mhz für Full Speed und 6 MHz für Low Speed kann von dem am PIC angeschlossenen primären Oszillator erzeugt werden, wenn er eine der Folgenden Frequenzen hat: 4, 8, 12, 16, 20, 24, 40 20

23 oder 48. Für die Spannungsversorgung des PIC gibt es drei verschiedene Möglichkeiten. Im Bus Power Only Mode wird der PIC über eine externe Quelle versorgt. im Self Power Only Mode hingegen über den Bus. Die dritte Möglichkeit ist eine Kombination von Beiden. In diesem Mode schaltet der PIC selbständig in den Self Power Only Mode wenn keine externe Versorgung zu Verfügung steht. Abbildung 2-12: Power Modes [3] 21

24 2.3 Das Board Für das Board wurde als Versorgung der Bus Power Only Mode gewählt, damit die externe Stromversorgung entfällt. Um empfangene Daten auf einem externen Speicherbaustein ablegen zu können, wurde ein EEprom 24LC256 über I2C an den Pic angeschlossen. Damit man während der Entwicklung des Firmware Programms den PIC nicht zur Programmierung entnehmen muss, wurde eine ISP Schnittstelle realisiert. Diese Schnittstelle ermöglicht die Programmierung des PIC mit dem zur Verfügung gestellten ICD2 Kit von Microchip, direkt auf dem Board. 22

25 3 Software 3.1 PIC Firmaware USB_IO Die Grundlage für die während der Studienarbeit entwickelte Firmware, war das Example ex_usb_hid.c und die darin eingebundenen zusätzlichen Dateien. Diese sind Teil des mitgelieferten Examples des eingesetzten C-Compilers von CCS für PICs. Die Datei ex_usb_hid.c beinhaltet die Funktion main(), die beim Start des Controllers aufgerufen wird. Zunächst werden Initialisierungen aufgerufen, mit deren Hilfe der Controller konfiguriert wird. Der zweite Teil besteht aus einer Endlosschleife, die bis zum Ausschalten des Controllers nicht verlassen wird Funktionen von USB_IO Im Folgenden soll eine kurze Übersicht über die verwendeten und geschriebenen Funktionen gegeben werden. usb_init() -> pic18_usb.h Hier wird die Initialisierung des USB Moduls durchgeführt. Der erforderliche Speicherbereich für die Endpoints wird reserviert und für die Kommunikation erforderlichen Interrupts werden aktiviert. Alle erforderlichen Schritte, die es ermöglichen, dass der Controller sein USB Modul benutzen kann, werden durchgeführt. Init_extern_eeprom() -> c Zunächst müssen in der Datei c die Daten und Taktleitung vom I2C Modul des PIC angegeben werden. Mit dem Aufruf der Funktion init_extern_eeprom() werden die PINs für die Kommunikation konfiguriert. Beide werden dazu als Eingang gesetzt. In der Endlosschleife, d.h. nach dem die erforderlichen Module initialisiert wurden, werden die folgenden Funktionen für die Kommunikation und den Austausch von Daten verwendet: 23

26 usb_enumerated() >usb.c Diese Funktion gibt den Wert 1 zurück, wenn das Gerät vom Host enumerated wurde, d.h. wenn der Host sich mit dem Gerät verbunden, und ihm eine eindeutige Adresse zugewiesen hat. Ist das Gerät noch nicht Verbunden, gibt die Funktion den Wert 0 zurück. usb_kbhit()-> usb.c Hat ein Endpoint neue Daten vom Bus empfangen, gibt die Funktion den Wert 1 zurück. Wurden die Daten abgeholt und der Buffer geleert, gibt die Funktion eine Null zurück. USB_Recive() -> ex_usb_hid.c Ruft die Funktion usb_gets() auf, wenn Daten vom Host empfangen wurden. usb_gets() wird der entsprechende Endpoint, ein Pointer auf ein Array wo die empfangenen Daten im Datenspeicher abgelegt werden sollen, die maximale Größe des reservierten Speichers, sowie eine Timeoutzeit in Millisekunden übergeben. Die Funktion wird verlassen, wenn der Inhalt eines Pakets Null ist oder die Paketgröße kleiner als die Maximale. oder wenn die angegebene Timeoutzeit überschritten wird. Wurden alle Daten ausgelesen, werden die Daten aus dem EP gelöscht. Ist der Wert des ersten Bytes des Datenpakets Eins, soll das Gerät den Inhalt des Eeproms an den Host senden. Dazu wird die Funktion USB_Send() aufgerufen. Ist das erste Byte des empfangenen Datenpakets ungleich Eins, wird die Variable rec auf den Wert Eins gesetzt. Sind die Empfangenen Daten im internen Datenspeicher abgelegt, kehrt das Programm zu dem normalen Prgrammablauf zurück. Dort werden die Daten aus dem internen Datenspeicher mit Hilfe der Funktion write_ext_eeprom() auf dem externen Eeprom abgelegt. USB_Send() -> ex_usb_hid.c Wird das Gerät vom Anwenderprogramm aufgefordert Daten zu senden, müssen diese erst mit der Funktion write_ext_eeprom() vom externen Speicher in den internen Datenspeicher kopiert werden. Mit der Funktion usb_puts werden die gewonnen Daten dann dem EP Paket für Paket übergeben und über USB an den Host gesendet. 24

27 3.1.2 Deskriptoren: Jedes Gerät hat einen Device-Deskriptor der grundlegende Informationen über das Gerät enthält. Zusätzlich zu den Standard-Deskriptoren kann das Gerät Klassen- Deskriptoren enthalten, die z.b. die Eigenschaften einer Klasse wie HID beschreiben oder herstellerspezifische Informationen enthalten. Am Anfang jedes Dekriptors steht seine Länge und sein Typ. Der Typ sagt aus, welche Informationen in diesem Deskriptor enthalten sind. Die Deskriptoren sind Inhalt der Datei usb_desc_hid.h der Firmware des PICs. Device-Descriptor Wie schon beschrieben enthält dieser Deskriptor grundlegende Informationen über das Gerät. Dieser Deskriptor wird bei der Enumeration vom Host als erstes abgefragt. const char USB_DEVICE_DESC[USB_DESC_DEVICE_LEN] ={ 18, // blength 0x01, // bdescriptortype 0x10,0x01, // bcdusb 0x00, // bdeviceclass 0x00, // bdevicesubclass 0x00, // bdeviceprotokoll 64, // bmaxpacketsize(0) 0x61,0x04, // idvendor 0x20,0x00, // idproduct 0x00,0x01, // bcddevice 0x01, // imanufacturer 0x02, // iproduct 0x00, // iserialnumber 0x01 // bnumconfigurations }; blength bdescriptortype bcdusb Länge des Deskriptors (Byte) Gibt den Deskriptortyp an und ist in diesem Fall die Konstante DEVICE mit dem Wert 0x01. USB-Spezifikation 1.0, 1.1 oder 2.0 des Device im BCD Format. bdeviceclass Der Klassencode gibt auskunft über die Zugehörigkeit des Geräts zu einer bestimmten Klasse. Herstellerspezifische Klassen werden mit dem Wert 0xff gekennzeichnet. 25

28 bdevicesubclass bdeviceprotokoll bmaxpacketsize(0) idvendor idproduct imanufacturer iproduct iserialnumber bnumconfigurations Der Unterklassencode kann die Geräte einer geminsamen Klasse in weitere Klassen mit verscheiden Eigneschaften unterteilen. Protokollcode Maximale Paketgröße, die der EP 0 unterstützt. Ist abhängig von der gewählten USB-Spezifikation des Geräts. Ein Low-Speed Gerät unterstützt maximal 8 Byte und ein Full-Speed maximal 64 Byte. Ein Gerät das Verkauft wird muss eine Anbieter ID enthalten, die dem Hersteller gegen Bezahlung einer Verwaltungsgebühr zugeteilt wird. Unterscheidung den einzelnen Geräten eines Herstellers, wird von ihm selbst vergeben Verweist auf einen String, der den Hersteller näher beschreibt. Wird kein String verwendet, muss der Wert Null sein. Verweist auf einen String, der das Produkt beschreibt. Muss auch Null sein, wenn kein String vorhanden Mit der Seriennummer ist es möglich, dass der Host ein Gerät wieder erkennt, auch wenn der Rechner neu gestartet wurde, oder das Gerät vom Bus getrennt wurde. Zudem sollte der Gerätetreiber nicht neu geldaden werden müssen, wenn der Anwender das Gerät an einen anderen Port des gleichen Host anschließt. Anzahl der vom Gerät unterstützten Konfigurationen. Viele Geräte unterstützen nur eine Konfiguration. Werden dagegen mehrere Konfigurationen unterstütz, so kann ggf. der Treiber oder auch der Anwender eine Konfiguration auswählen. 26

29 Die folgenden Deskriptoren stehen gemeinsam in dem Array USB_CONFIG_DESC[] und müssen in der folgenden Reihenfolge sein: Configuration-Deskriptor, Interface- Descriptor, Class-Deskriptor und Endpoint-Deskriptoren. Configuration-Deskriptor: Dieser Deskriptor beschriebt die Anzahl verschiedener Interfaces und informiert über spezielle Geräte Konfigurationen. 9, // blength 0x02, // bdescriptortype 41,0, // wtotallength 1, // bnuminterfaces 0x01, // bconfigurationvalue 0x00, // iconfiguration 0xC0, // bmattributes 0x32, // MaxPower blength bdescriptortype wtotallength bnuminterfaces bconfigurationvalue iconfiguration bmattributes MaxPower Länge des Deskriptors (Byte) Gibt den Deskriptortyp an und ist in diesem Fall der Wert 0x02. Länge des gesamten USB_CONFIG_DESC Arrays mit den Configurations-, Interface-, Class-, und zwei Endpoint-Deskriptoren. bnuminterfaces Anzahl der Interfaces, die diese Konfiguration unterstütz. Nummeriert die Konfigurationen, wenn es mehr als nur eine gibt. Ansonsten ist der Wert eins. Beschreibt die Konfiguration. Gibt vor, wie das Gerät mit Strom versorgtwird Hier wird angegeben, wieviel Strom das Gerät maximal braucht. (MaxPower = Max. Milliamperes/2) 27

30 Interface-Descriptor Ein Interface Descriptor kann z.b. für einen EP alternative Einstellungen definieren, so dass dies auch nach der eigenlichen Konfiguration des EP noch variert werden können. 9, //blength 0x04, //bdescriptortype 0x00, //binterfacenumber 0x00, //balternatesetting 2, //bnumendpoints 0x03, //binterfaceclass 0x00, //binterfacesubclass 0x00, //binterfaceprotocol 0x00, //iinterface blength bdescriptortype binterfacenumber balternatesetting bnumendpoints binterfaceclass binterfacesubclass binterfaceprotocol iinterface Länge des Deskriptors (Byte) Gibt den Deskriptortyp an und ist in diesem der Wert 0x04. Interfacenummer dieser Interfacekonfiguration Wenn zwei Interfaces nicht gleichzeig aktiv sein dürfen, müssen sie die gleiche Interfacenummer, aber verscheidene Werte im balternatesetting haben. Anzahl der Endpoints die unterstützt werden, mit ausnahme des EP 0. Gibt die Interfaceklasse an, z.b. 0x03 für HID wie bei Device-Deskriptor wie bei Device-Deskriptor index für den String-Descriptor Class-Descriptor 9, //length of descriptor 0x21, //dscriptor type (0x21 == HID) 0x00,0x02, //hid class release number 0x00, //localized country code (0 = none) 0x01, //number of hid class descrptors that follow 0x22, //report descriptor type (0x22 == HID) USB_CLASS_SPECIFIC_DESC_LOOKUP_SIZE[0][0], 0x00, //length of report descriptor 28

31 Endpoint-Descriptor Jeder Endpoint hat seinen eigenen Deskriptor, Nur der Endpoint 0 hat keinen, wird aber im Device-Deskriptor konfiguriert. Der Endpoint-Deskriptor definiert die Art und Größe eines EP, sowie die Datenrichtung. //endpoint descriptor 1 7, // blength 0x05, // bdescriptortype 0x81, // bendpointadress 0x03, // bmattributes 64,0x00, // wmaxpacketsize 250, // binterval //endpoint descriptor 2 7, // blength 0x05, // bdescriptortype 0x01, // bendpointadress 0x03, // bmattributes 64,0x00, // wmaxpacketsize 10 // binterval }; blength bdescriptortype bendpointadress Länge des Deskriptors (Byte) Gibt den Deskriptortyp an und ist in diesem Fall die Konstante Endpoint mit dem Wert 0x05. Endpointnummer und Richtung; 0x81 = EP1 IN, 0x01 = EP1 OUT bmattributes wmaxpacketsize binterval Gibt an welcher Transfertyp von dem EP unterstützt wird. 0x03 steht für Interrupt-Transfer Größte unterstützte Paketgröße von diesem EP Abfrage Interval, max. Latenzzeit in Millisekunden 29

32 String-Descriptor String Deskriptoren sind optional und können beschreibenden Text enthalten. Der String 0 dient der Sprachdefinition. char const USB_STRING_DESC[]={ //string 0 4, //length of string index USB_DESC_STRING_TYPE, //descriptor type 0x03 (STRING) 0x09,0x04, //Microsoft Defined for US-English //string 1 8, //length of string index USB_DESC_STRING_TYPE, //descriptor type 0x03 (STRING) 'C',0, 'C',0, 'S',0, //string 2 26, //length of string index USB_DESC_STRING_TYPE, //descriptor type 0x03 (STRING) 'C',0, 'C',0, 'S',0, ' ',0, 'H',0, 'I',0, 'D',0, ' ',0, 'D',0, 'e',0, 'm',0, 'o',0 }; HID Report Teil dem HID Treiber mit, welches Format empfangene Daten haben. const char USB_CLASS_SPECIFIC_DESC[] = { 6, 0, 255, // Usage Page = Vendor Defined 9, 1, // Usage = IO device 0xa1, 1, // Collection = Application 0x19, 1, // Usage minimum 0x29, 8, // Usage maximum // input-report 0x15, 0x80, // Logical minimum (-128) 0x25, 0x7F, // Logical maximum (127) 0x75, 8, // Report size 0x95, 0xfe, // Input_Report count 0x81, 2, // Input (Data, Var, Abs) // output-report 0x19, 1, // Usage minimum 0x29, 8, // Usage maximum (Input) 0x75, 8, // Report size 0x95, 0xfe, // Output_Report count 0x91, 2, // Output (Data, Var, Abs) 0xc0 // End Collection }; 30

33 Usage Page Usage Collection Gibt über die allgemeine Funktion des Geräts auskunft. Gibt Auskunft über die Funktion des Berichts. Ohne den Eintrag kann das Gerät nicht von Windows nicht enumeriert werden. Ab diesem Eintrag beginnt eine Gruppe, die eine gemeinsame Funktion darstellt, d.h. der folgende input und output-report stellen gemeinsam eine Funktion dar. Logical Minimum und Maximum Definieren den Bereich der in dem Bericht benutzten Werte. Negative Elemente werden durch ein Zweierkomplement angegeben. Report Size Report Count End Collection Beschriebt die Größe eines Datenfelds. Beschriebt wieviele der in Reportsize definierten Datenfelder in einem Bericht gesendet werden sollen. Beendet die Beschriebung der Funktion, die unter Collection gestartet wurde. 31

34 3.2 Windows Anwendung USB_IO Ein Problem bei der Realisierung des Datenaustauschs ist, dass man nicht auf einfache Standardprogramme zurückgreifen kann und in den seltensten Fällen die passende Software finden wird. In diesem Fall wurde ein Beispiel [4] aus dem Internet gewählt, was zumindest die wichtigsten Funktionen unterstütz hat bzw. gut zu modifizieren war. Grundsätzlich sollte der Programmierer sich einen detaillierte Überblick über die Eigenschaften der Kommunikation über USB verschafft haben, bevor er mit dem eigentlichen Projekt beginnt. Es gibt aber auch einige Dinge, um die der Programmierer sich, im speziellen bei der Programmierung von Software für HID Devices, nicht kümmern braucht. Folgende Dinge, werden vom Betriebssystem durchgeführt: Das Betriebssystem erkennt selbst, wenn ein USB Gerät angeschlossen oder vom System getrennt wird und stellt die vom Peripheriegerät unterstützten Transfertypen ein. Die gesamte Enumeration braucht also auf Seiten des Host vom Programmierer nicht realisiert werden. Windows stellt alle Dienste zu Verfügung über die ein Anwenderprogramm mit Hilfe der USB-Hardware des PCs mit einem Peripheriegerät kommunizieren kann. Abbildung 3-1: Windowsanwendung 32

35 Das Windowsprogramm wurde mit dem Microsoft Visual Studio 2005 Entwickelt und ist in der Programmiersprache C# geschrieben. Über das Entwickelte Programm können Dateien auf einfachste weise an ein Device übertragen werden. Voraussetzung ist, dass das Gerät angeschlossen ist und die korrekte Vendor ID und Produkt ID eingetragen wurden. Die Funktion der IDs ist schon im Zuge der Deskriptoren erklärt worden. Über den Button Find the Device kann geprüft werden ob das entsprechende Gerät an dem PC angeschlossen ist. Über den Button Empfangen kann das Gerät vom Anwender aufgefordert werden die auf dem Eeprom gespeicherten Daten an den PC zu schicken. Dazu wird der Anwender aufgeordert das Verzeichnis zu Wählen, wo die Daten abgelegt werden sollen. Der Name der Datei und der Typ kann vor dem Klick auf den Button in dem entsprechenden Textfenster geändert werden. Wurden die Daten empfangen wird dies im Textfenster Display angezeigt. Auch über eventuelle Übertragungsschwierigkeiten wird hier informiert. Wird der Button Senden angeklickt öffnet sich ein Fenster mit dessen Hilfe die zu sendende Datei gewählt werden kann. Wie auch beim Empfangen werden Stausinformationen im Textfenster Display ausgegeben. 33

36 4 Zusammenfassung Der Universal Serail Bus ist für den Anwender ein große Erleichterungen. Über die Wahl eines Ports, die Einstellung einer Übertragungsgeschwindigkeit für eine sichere Kommunikation und sonstige Konfigurationen braucht er sich keine Gedanken mehr machen. Hinzu kommt, dass ein USB-Device oft auf externe Stromversorgung verzichtet werden kann was die Mobilität steigert. Für den Entwickler eines USB Geräts heißt das aber, dass die für den Anwender wegfallende Konfiguration eines Geräts schon im Gerät über sogenannte Deskriptoren abgelegt sein muss und im Nachhinein nicht veränderbar sind. Für die Kommunikation zwischen dem PC und dem Gerät kann, wie bei der Kommunikation über RS232-Schnittstelle üblich, auch kein Standardterminalprogramm genutzt werden. Das hat zu Folge, dass für die Kommunikation zwischen den PC und dem Gerät immer auf seitens des Geräts als auch auf der PC Seite Programmcode erstellt werden muss. Das setzt gute Kenntnisse des USB Standards voraus. Leider ist es schwer gute Informationen bei speziellen Problemstellungen zu finden und die Literatur beschränkt sich meist auf das, was auch in den Dokumenten zur USB Spezifikation zu finden ist. Neben den Kenntnissen über den USB-Standard muss der Entwickler auch über Programmierkenntnisse für Windowsanwendungen als auch Controllerprogramme verfügen. Die Programmierung der Windowsanwendung und die Einstellung der Deskriptoren im Gerät hat einen großen Teil der zu Verfügung stehenden Zeit für die Studienarbeit in Anspruch genommen. Insgesamt ist USB eine gute alternative zur RS232 Schnittstelle, die vor allem dem Anwender zu Gute kommt. Die Entwicklung des Geräts erfordert aber mehr Zeit und zum Teil detaillierte Kenntnisse über den Standard. 34

37 5 Literaturverzeichnis [1] UNIVERSAL SERIAL BUS SPECIFICATION [2] USB 2.0 HANDBUCH FÜR ENTWICKLER, 2. Auflage 2004 Jan Axelson ISBN [3] DATA SHEET PIC18F2550 [4] HID BEISPIELPROGRAMM USBHIDIO.CS Aufgerufen

USB universeller serieller Bus

USB universeller serieller Bus USB universeller serieller Bus - USB ist ein serieller Single-Master-Bus. - USB unterstützt drei Datenübertragungsgeschwindigkeiten: - Low Speed: 1,5 MBit/s - Full-Speed: 12 MBit/s (framepulse 1ms) - High-Speed:

Mehr

Kurze Einführung zu USB

Kurze Einführung zu USB Kurze Einführung zu USB Die Kommunikation über USB soll möglichst einfach dargestellt werden. Die Bibliothek für ATMEL USB AVRs verwendet keine Standardklassen. Sie arbeitet auf der PC Seite mit der freien

Mehr

USB Stack - Design der Systemschnittstelle. Franz Hirschbeck AKBP II, WS 2003/04

USB Stack - Design der Systemschnittstelle. Franz Hirschbeck AKBP II, WS 2003/04 1 1 USB Stack - Design der Systemschnittstelle 2 Überblick 2 Der USB-Standard allgemein Die Implementierung 3 Überblick Der USB-Standard allgemein 3 Ziele Topologie Pipes und Deskriptoren Transfertypen

Mehr

USB - unbekannter serieller Bus

USB - unbekannter serieller Bus USB - unbekannter serieller Bus eine vereinfachte Einführung in die Funktionsweise des Universal Serial Bus Stefan Schürmans USB - unbekannter serieller Bus (V 1.1), Stefan Schürmans

Mehr

Universal Serial Bus

Universal Serial Bus Universal Serial Bus Universität Mannheim Technische Informatik Seminar im Wintersemester 03/04 Thorsten Scholz 1 Inhalt allgemeiner Überblick elekrisches Interface Datenübertragung Geräteerkennung Klassen

Mehr

USB. Susanne Grein Hochschule RheinMain Fachseminar 2009

USB. Susanne Grein Hochschule RheinMain Fachseminar 2009 USB Susanne Grein Hochschule RheinMain Fachseminar 2009 Begriffsklärung Bus? Universal Serial Bus Seriell: Bits nacheinander auf einer Leitung übertragen Verbindung Computer - Peripheriegerät Eigenschaften

Mehr

5. Digitale Schnittstellen und Vernetzung im Überblick

5. Digitale Schnittstellen und Vernetzung im Überblick 5. Digitale Schnittstellen und Vernetzung im Überblick 5.1 Schnittstellen für Computerperipherie speziell: USB, FireWire 5.2 Drahtgebundene Netztechnologien z.b. Ethernet, ATM 5.3 Drahtlose Netztechnologien

Mehr

USB - unbekannter serieller Bus

USB - unbekannter serieller Bus USB - unbekannter serieller Bus Zusammenfassung der vereinfachten Einführung in die Funktionsweise des Universal Serial Bus Stefan Schürmans Dezember 2004 (V 1.1) 1 USB - unbekannter

Mehr

Diplomarbeit. Fakultät Elektrotechnik und Informationstechnik. Studiumrichtung Nachrichtentechnik. Dmytro Farber

Diplomarbeit. Fakultät Elektrotechnik und Informationstechnik. Studiumrichtung Nachrichtentechnik. Dmytro Farber Fakultät Elektrotechnik und Informationstechnik Studiumrichtung Nachrichtentechnik Diplomarbeit Dmytro Farber Adapter für die Ankopplung einfacher Messgeräte an den Universal Serial Bus (USB) betreut von:

Mehr

USB Starter 1/85 Prof. Dr.-Ing, Hermann

USB Starter 1/85 Prof. Dr.-Ing, Hermann 1 Gerätemodell... 5 1.1 Übersicht... 5 1.2 Beschreibungshierarchie... 6 1.3 Device Descriptor... 8 1.3.1 bdeviceclass, bdevicesubclass, bdeviceprotocol... 9 1.3.2 idvendor, idproduct, bcddevice... 9 1.3.3

Mehr

USB Universal Serial Bus

USB Universal Serial Bus Ausarbeitung zum Vortrag vom 25.11.2009 USB Universal Serial Bus Von Christoph Ritter Matrikel-Nr. 256029 Für Prof. Dr. K.O. Linn Hochschule RheinMain Fachbereich DCSM Inhaltsverzeichnis 1. Die Ausgangssituation...3

Mehr

USB Stack - Design der Systemschnittstelle

USB Stack - Design der Systemschnittstelle USB Stack - Design der Systemschnittstelle Franz Hirschbeck sifrhirs@stud.uni-erlangen.de Inhaltsverzeichnis 1 Das Datenmodell des USB 2 1.1 Die Ziele des Standards..................... 2 1.2 Die Topologie

Mehr

BUSSYSTEME und Interfaces

BUSSYSTEME und Interfaces MIKROPROZESSOR PROGRAMMIERUNG 6. VORLESUNG BIT LV-Nr. 439.026 SS2007 1 I²C Bus I²C (für Inter-Integrated Circuit, gesprochen I-Quadrat-C bzw. I-square-C) ist ein von Philips Semiconductors entwickelter

Mehr

2 USBundLinuxhotplug. 2.1 Eigenschaften von USB. In diesem Kapitel lernen Sie. das USB-Schichtenmodell kennen.

2 USBundLinuxhotplug. 2.1 Eigenschaften von USB. In diesem Kapitel lernen Sie. das USB-Schichtenmodell kennen. 2 USBundLinuxhotplug In diesem Kapitel lernen Sie das USB-Schichtenmodell kennen. die Kernelmodule für USB-Treiber kennen. wie Sie USB-Geräte unter Linux verwenden. dashotplug-system von Linux kennen.

Mehr

13. Universal Serial Bus USB 13.1 Allgemeine Charakteristiken:

13. Universal Serial Bus USB 13.1 Allgemeine Charakteristiken: 13. Universal Serial Bus USB 13.1 Allgemeine Charakteristiken: Anschlußtechnik für externe Geräte: - Drucker, Maus & Tastatur, - Modems und ISDN Adapter, - Telephone, Kameras & Scanner, - Disketten und

Mehr

Vortrag zur Diplomarbeit

Vortrag zur Diplomarbeit Fakultät Informatik Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Vortrag zur Diplomarbeit Entwurf und Implementierung eines zuverlässigen verbindungsorientierten Transportprotokolls für

Mehr

ishrt CommDTM Benutzerhandbuch UNIFIED FIELD COMMUNICATION

ishrt CommDTM Benutzerhandbuch UNIFIED FIELD COMMUNICATION Benutzerhandbuch UNIFIED FIELD COMMUNICATION Inhalt 1 Installation der Software...3 2 Kommunikations-DTM ishrt CommDTM...4 3 Konfiguration ishrt Comm DTM offline...5 3.1 Treiberkonfiguration...5 3.2 Kanalkonfiguration...6

Mehr

USB in Embedded Systemen. Referat von Peter Voser Embedded Development GmbH

USB in Embedded Systemen. Referat von Peter Voser Embedded Development GmbH USB in Embedded Systemen Referat von Peter Voser Embedded Development GmbH Embedded Development GmbH Engineering and Development System Engineering Hardware/Software Co-Design Embedded Software Entwicklung

Mehr

PICkit 2 / 3. Programmierung mit dem USB-Programmer PICkit2 bzw. PICkit3 (Microchip) AB-2011-01

PICkit 2 / 3. Programmierung mit dem USB-Programmer PICkit2 bzw. PICkit3 (Microchip) AB-2011-01 PICkit 2 / 3 Programmierung mit dem USB-Programmer PICkit2 bzw. PICkit3 (Microchip) AB-2011-01 In diesem Dokument wird ein Umbau beschrieben. Für die Funktion des Umbaus gibt es keine Garantie. Für durch

Mehr

VB.net Programmierung und Beispielprogramm für GSV

VB.net Programmierung und Beispielprogramm für GSV VB.net Programmierung und Beispielprogramm für GSV Dokumentation Stand vom 26.05.2011 Tel +49 (0)3302 78620 60, Fax +49 (0)3302 78620 69, info@me-systeme.de, www.me-systeme.de 1 Inhaltsverzeichnis Vorwort...2

Mehr

USB, Universal Serial Bus

USB, Universal Serial Bus Berner Fachhochschule Hochschule für Technik und Informatik HTI USB, Universal Serial Bus Burgdorf, 23. Januar 2006 Autor: Fach: Dozent: Sandro Schnegg Embedded Control Max Felser Zusammenfassung Im Fach

Mehr

Serielle Busse: Literatur. Serielle Busse: Agenda. Serielle Busse: USB vs. 1394. Serielle Busse: Motivation. PC-Technologie Serielle Busse 91

Serielle Busse: Literatur. Serielle Busse: Agenda. Serielle Busse: USB vs. 1394. Serielle Busse: Motivation. PC-Technologie Serielle Busse 91 Serielle Busse: Agenda Motivation für serielle Busse USB - Architektur USB - Treiber IEEE 39 (FireWire) Serielle Busse: Motivation warum neue Busse? Schnittstellengewirr des "legacy"- Überwinden der lästigen

Mehr

Handbuch FireWire IEEE 1394a PCI Schnittstellenkarten 3+1 deutsch Handbuch_Seite 2 Inhalt 1.0 Was bedeutet IEEE1394a 2 2.0 1394a Eigenschaften 2 3.0 PC Systemvoraussetzungen 3 4.0 Technische Informationen

Mehr

ekey TOCAhome pc Software Inhaltsverzeichnis 1. ZWECK DIESES DOKUMENTS... 3 2. VERWENDUNGSHINWEIS ZUR SOFTWARE... 3

ekey TOCAhome pc Software Inhaltsverzeichnis 1. ZWECK DIESES DOKUMENTS... 3 2. VERWENDUNGSHINWEIS ZUR SOFTWARE... 3 Inhaltsverzeichnis Software ekey TOCAhome pc 1. ZWECK DIESES DOKUMENTS... 3 2. VERWENDUNGSHINWEIS ZUR SOFTWARE... 3 3. MONTAGE, INSTALLATION UND ERSTINBETRIEBNAHME... 3 4. VERSION... 3 Version 1.5 5. BENUTZEROBERFLÄCHE...

Mehr

SC18IM700-Tester v1.0. 1. Einleitung

SC18IM700-Tester v1.0. 1. Einleitung SC18IM700-Tester v1.0 1. Einleitung Der SC18IM700-Tester ist ein mittels Visual Studio.NET und in der Programmiersprache C# entwickeltes Programm. Es lehnt sich an der Funktion eines einfachen Terminal-

Mehr

6. Peripheriegeräte und Schnittstellen

6. Peripheriegeräte und Schnittstellen Abb. 6.1: Tastatur und Tastaturschnittstelle Abb. 6.2: Tastatur-SDU und Belegung der Stecker Abb. 6.3: Die Scan-Codes der MF-II-Tastatur Tastatur Tastaturkontaktmatrix Tastaturprozessor Tastaturkabel 11

Mehr

Systemvergleich der Multimedia-Bussysteme: MOST, USB 2.0, IEEE 1394

Systemvergleich der Multimedia-Bussysteme: MOST, USB 2.0, IEEE 1394 Systemvergleich der Multimedia-Bussysteme: MOST, USB 2.0, IEEE 1394 von Jens Brocke 26.10.2000 FH Braunschweig/Wolfenbüttel Inhalt der Präsentation Herkunft und Anwendungsgebiete Gemeinsame Eigenschaften

Mehr

NanoDMX USB Interface

NanoDMX USB Interface NanoDMX USB Interface Bedienungsanleitung Art.-Nr.: 99-0400 NanoDMX USB Interface 2 Beschreibung Das NanoDMX USB Interface ist ein Adapterkabel das sehr einfach die Steuerung von DMX-fähigen Geräten über

Mehr

Peripherie Komplexe serielle Schnittstellen

Peripherie Komplexe serielle Schnittstellen Peripherie Komplexe serielle Schnittstellen Kennzeichen Aufwändigere Physical Layer Darstellungen Praktisch immer asynchron Blockübertragungen Asynchronität: Taktrückgewinnung nötig Overhead bei Bit-Übertragung

Mehr

Anleitung zur Konfiguration und ersten Inbetriebnahme des RPTC-1 v1.17. www.funk24.net. RPTC-1_anleitung_v117.docx 1 / 14 DG1BGS, 03.08.

Anleitung zur Konfiguration und ersten Inbetriebnahme des RPTC-1 v1.17. www.funk24.net. RPTC-1_anleitung_v117.docx 1 / 14 DG1BGS, 03.08. Anleitung zur Konfiguration und ersten Inbetriebnahme des RPTC-1 v1.17 RPTC-1_anleitung_v117.docx 1 / 14 DG1BGS, 03.08.2015 21:26:00 Inhaltsverzeichnis Vorbereitungen... 3 Installation des USB-Treibers...

Mehr

USB/RS232-Gateway ECO2USB Treiberinstallation unter Windows 7 (64 bit)

USB/RS232-Gateway ECO2USB Treiberinstallation unter Windows 7 (64 bit) USB/RS232-Gateway ECO2USB Treiberinstallation unter Windows 7 (64 bit) bisherige Ausgaben: Ausgabe Bemerkung Dez. 2012 Erstausgabe Impressum Alle Rechte bei: Jenaer Antriebstechnik GmbH Buchaer Straße

Mehr

PicKit 3. Programmierung mit dem USB-Programmer PICkit3 (Microchip) AB-2010-04

PicKit 3. Programmierung mit dem USB-Programmer PICkit3 (Microchip) AB-2010-04 PicKit 3 Programmierung mit dem USB-Programmer PICkit3 (Microchip) AB-2010-04 In diesem Dokument wird ein Umbau beschrieben. Für die Funktion des Umbaus gibt es keine Garantie. Für durch diesen Umbau entstandene

Mehr

Bedienungsanleitung DD 55 IS. Displaydecoder mit InterBus-S

Bedienungsanleitung DD 55 IS. Displaydecoder mit InterBus-S Bedienungsanleitung DD 55 IS Displaydecoder mit InterBus-S 15/05/13 dd55is DE_1.doc Los \API 1/10 Inhalt 1 Einleitung... 3 2 Anschlußbelegung... 3 3 Prozeßdatenkanal... 3 4 Eingangsdatenwort... 3 5 Statusbits...

Mehr

Fachhochschule Augsburg Fachbereich Informatik. Präsentation der Diplomarbeit. zum Thema

Fachhochschule Augsburg Fachbereich Informatik. Präsentation der Diplomarbeit. zum Thema Fachhochschule Augsburg Fachbereich Informatik Präsentation der Diplomarbeit zum Thema Kommunikation von Linux-Applikationen mit generischer Hardware über das USB-Subsystem, praktisch realisiert am Beispiel

Mehr

Der CAN-Bus (Controller Area Network)

Der CAN-Bus (Controller Area Network) Der CAN-Bus (Controller Area Network) Was ist das und wozu braucht man das? Jürgen Stuber 2012-10-03 Jürgen Stuber () Der CAN-Bus (Controller Area Network) 2012-10-03 1 / 15 Anwendungen KFz Jürgen Stuber

Mehr

InterCafe 2010. InterCafe 2010

InterCafe 2010. InterCafe 2010 InterCafe 2010 Der Inhalt dieses Handbuchs und die zugehörige Software sind Eigentum der blue image GmbH und unterliegen den zugehörigen Lizenzbestimmungen sowie dem Urheberrecht. 2009 blue image GmbH

Mehr

USB Universal Serial Bus

USB Universal Serial Bus USB Universal Serial Bus Michael Hentsche 09453 2INF02 Inhalt: EINLEITUNG... 3 GESCHICHTE... 4 VERÖFFENTLICHUNG DER USB-SPEZIFIKATION... 5 USB 2.0... 6 DER USB UND DIE IEEE-1394... 6 USB ON-THE-GO"...

Mehr

UART-Kommunikation mit dem Atmel AVR

UART-Kommunikation mit dem Atmel AVR Fachbereich Elektrotechnik und Informatik Labor für Angewandte Informatik und Datenbanken Praktikum Automatisierung / Echtzeitregelung (BAU/BER) Prof.Dr.-Ing. Coersmeier UART-Kommunikation mit dem Atmel

Mehr

iscan USB Benutzerhandbuch UNIFIED FIELD COMMUNICATION

iscan USB Benutzerhandbuch UNIFIED FIELD COMMUNICATION Benutzerhandbuch UNIFIED FIELD COMMUNICATION Inhalt I EG-Konformitätserklärung...1 1 iscan USB...2 2 Installation und Inbetriebnahme...3 2.1 Installation der Treibersoftware...3 2.2 Installation der Hardware...5

Mehr

Es ist ratsam die Schritte der Reihe nach durchzugehen, um ein erfolgreiches Ergebnis zu erzielen.

Es ist ratsam die Schritte der Reihe nach durchzugehen, um ein erfolgreiches Ergebnis zu erzielen. Installationshilfe für die T-Sinus 721X/XA und deren Komponenten unter Windows XP In der folgenden Installationshilfe wird davon ausgegangen, dass alle aus dem Internet herunter geladenen Pakete in den

Mehr

BEDIENUNGSANLEITUNG SKX OPEN. SKX Open ZN1RX SKXOPEN. Edition 1,1

BEDIENUNGSANLEITUNG SKX OPEN. SKX Open ZN1RX SKXOPEN. Edition 1,1 BEDIENUNGSANLEITUNG SKX OPEN SKX Open ZN1RX SKXOPEN Edition 1,1 INHALT 1. Einleitung... 3 1.1. ZN1RX-SKX OPEN... 3 1.2. Applikationsprogramm: SKX Open... 3 1.3. Grundlegende Spezifikationen des SKX Open...

Mehr

Die USB Schnittstelle Was ist an ihr besonders gut?

Die USB Schnittstelle Was ist an ihr besonders gut? Die USB Schnittstelle Was ist an ihr besonders gut? von Thomas Wagner E Mail: twagn002@stud.informatik.fh wiesbaden.de Fachseminar WS 2009/10 bei Prof. Dr. Linn Hochschule RheinMain Bachelor Allgemeine

Mehr

USB. Autor Valentin Lätt Datum 09.07.2010 Thema USB Version V 1.0

USB. Autor Valentin Lätt Datum 09.07.2010 Thema USB Version V 1.0 Autor Datum 09.07.2010 Thema Version V 1.0 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis... - 2-2 Was ist die Schnittstelle?... - 3-2.1 Wo wird die Schnittstelle eingesetzt?... - 3-2.2 Weitere Anwendungsbeispiele

Mehr

Für den Zugriff vom PC aus die TCP/IP Netzwerkeinstellung des PC auf DHCP bzw. automatisch stellen,

Für den Zugriff vom PC aus die TCP/IP Netzwerkeinstellung des PC auf DHCP bzw. automatisch stellen, DIGITRONIC GmbH - Seite: 1 Ausgabe: 11.05.2012 Einstellanleitung GSM XSBOXR6VE Diese Anleitung gilt für die Firmware Version 1.1 Zunächst die SIM Karte mit der richtigen Nummer einsetzten (siehe Lieferschein).

Mehr

Finden und Ausnutzen von Schwachstellen in USB-Host-Implementierungen

Finden und Ausnutzen von Schwachstellen in USB-Host-Implementierungen in Kooperation mit Finden und Ausnutzen von Schwachstellen in USB-Host-Implementierungen Bachelorthesis Gerhard Klostermeier 17. Oktober 2014 Betreuer (Hochschule Aalen): Prof. Dr. Christoph Karg Betreuer

Mehr

Booster 10'604 Ethernet & D-Point Setup Program

Booster 10'604 Ethernet & D-Point Setup Program Booster 10'604 Ethernet & D-Point Setup Program Document version V01.04 (31/01/06) Alle hiernach beschriebenen Funktionen können jederzeit und ohne vorherige Ankündigung geändert oder gelöscht werden um

Mehr

bluelino 4G/ 4G+ Konfigurationssoftware

bluelino 4G/ 4G+ Konfigurationssoftware LinTech Bedienungsanleitung bluelino 4G/ 4G+ Konfigurationssoftware Revision 1.42 Inhalt 1 Konfiguration des bluelino 4G oder 4G+ ändern... 3 1.1 Voraussetzungen... 3 1.2 Start/Inbetriebnahme Konfigurationssoftware...

Mehr

ProfiTrace Inbetriebnahme Checkliste für DP (1)

ProfiTrace Inbetriebnahme Checkliste für DP (1) ProfiTrace Inbetriebnahme Checkliste für DP (1) Beschreibung: Testfälle für die Inbetriebnahme sowie Funktionsprüfung eines PROFIBUS DP Netzwerkes mit dem ProfiTrace Analyzer. 1. Leitung Verantwortliche

Mehr

Compuprint SP40plus. Das SP40plus Remote Setup Programm. Restore MFG. Send Setup. Send Setup. Restore MFG

Compuprint SP40plus. Das SP40plus Remote Setup Programm. Restore MFG. Send Setup. Send Setup. Restore MFG Das SP40plus Remote Setup Programm Das SP40plus Remote Setup Programm ist ein kleines schweizer Messer, das Ihnen den Umgang mit dem Produkt erleichtert, sei es, dass Sie als Techniker mehrere Geräte aktualisieren

Mehr

KERN YKI-02 Version 1.0 12/2014 D

KERN YKI-02 Version 1.0 12/2014 D KERN & Sohn GmbH Ziegelei 1 D-72336 Balingen E-Mail: info@kern-sohn.com Installationsanleitung RS232-Bluetooth-Adapter KERN YKI-02 Version 1.0 12/2014 D Tel: +49-[0]7433-9933-0 Fax: +49-[0]7433-9933-149

Mehr

NovaTec. Konfigurationsanleitung RMCS

NovaTec. Konfigurationsanleitung RMCS NovaTec Konfigurationsanleitung RMCS Version 1.1 / Stand: 09.09.2011 Änderungen vorbehalten copyright: 2011 by NovaTec Kommunikationstechnik GmbH Technologiepark 9 33100 Paderborn Germany Inhaltsverzeichnis

Mehr

Ankopplung GSM Interface an FAT2002 (GSM-Option)

Ankopplung GSM Interface an FAT2002 (GSM-Option) Ankopplung GSM Interface an FAT2002 (GSM-Option) ab Firmware-Version 4.24.10.1 Allgemeines Das FAT2002 stellt eine Übermittlung von Meldungen per SMS bereit. Die Meldungen aus der BMZ werden im FAT gemäß

Mehr

Modbus-Master-Treiber

Modbus-Master-Treiber Modbus-Master-Treiber 1. Einleitung MODBUS ist ein offenes serielles Kommunikationsprotokoll, das auf einer Master/Slave Architektur basiert. Dabei greift der MODBUS-Master (Touch Panel PC) auf die fest

Mehr

3. Film- und Videotechnik und digitale Videobearbeitung

3. Film- und Videotechnik und digitale Videobearbeitung 3. Film- und Videotechnik und digitale Videobearbeitung ONLINE ONLY 3.1! Film- und Kinotechnik analog! 3.2! Film- und Kinotechnik digital! 3.3! TV- und Videotechnik analog und digital! 3.4! Produktion

Mehr

SCAN OPERATOR 12. Bedienungsanleitung. Ab Version 1.0. email: service@glp.de Internet: http://www.glp.de

SCAN OPERATOR 12. Bedienungsanleitung. Ab Version 1.0. email: service@glp.de Internet: http://www.glp.de Bedienungsanleitung Ab Version 1.0 email: service@glp.de Internet: http://www.glp.de 2 (V2.0) GLP German Light Production Inhalt 1 Übersicht...5 1.1 Frontansicht...5 1.2 Rückansicht...7 2 Bedienung...7

Mehr

Fachbereich Medienproduktion

Fachbereich Medienproduktion Fachbereich Medienproduktion Herzlich willkommen zur Vorlesung im Studienfach: Grundlagen der Informatik I USB Universal serial bus (USB) Serielle Datenübertragung Punkt-zu-Punkt Verbindungen Daten und

Mehr

Kommunikation HOST TMC420 Controller

Kommunikation HOST TMC420 Controller Kommunikation HOST TMC420 Controller Sofern möglich, sollte zusätzlich neben der seriellen Kommunikation (RS232 bzw. RS485) ein Signalaustausch tels digitaler E/A erfolgen (24 VDC). Dieses ermöglicht eine

Mehr

MINI-USB-DMX-INTERFACE. Bedienungsanleitung

MINI-USB-DMX-INTERFACE. Bedienungsanleitung MINI-USB-DMX-INTERFACE Bedienungsanleitung MINI-USB-DMX-INTERFACE 2 Beschreibung Das Mini-USB-DMX-Interface ist ein Adapterkabel das sehr einfach die Steuerung von DMX-fähigen Geräten über den PC ermöglicht.

Mehr

ORGA 6000 in Terminalserver Umgebung

ORGA 6000 in Terminalserver Umgebung ORGA 6000 in Terminalserver Umgebung Sie möchten das ORGA 6000 in einer Windows (Terminal) Server Umgebung betreiben. Wie gehen Sie dazu am besten vor? Sie haben drei Möglichkeiten das ORGA 6000 in einer

Mehr

St ar 1:4 2.6 3:5 2.5 4:0 7.5 3:5 5.0 3:5 7.5 4:0 5.0 4:0 0.0 4:1 0.0 4:0 2.5. Version 8, geändert am 09.06.2005

St ar 1:4 2.6 3:5 2.5 4:0 7.5 3:5 5.0 3:5 7.5 4:0 5.0 4:0 0.0 4:1 0.0 4:0 2.5. Version 8, geändert am 09.06.2005 Version 8, geändert am 09.06.2005 t 3:5 2.5 3:5 5.0 3:5 7.5 4:0 0.0 4:0 2.5 4:0 5.0 4:0 7.5 4:1 0.0 p 50 00 50 00 0 25 0 % 0 25 50 75 100 km 0 25 50 75 100 125 150 175 200 225 1:4 2.6 St ar INHALTSVERZEICHNIS

Mehr

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

GCM 100 GRAF-SYTECO H019A00. SYsteme TEchnischer COmmunication anzeigen, bedienen, melden, steuern, visualisieren und zählen GRAF-SYTECO Kaiserstr. 18 * D-78609 Tuningen * Tel.07464-98660- Fax.2550 SYsteme TEchnischer COmmunication anzeigen, bedienen, melden, steuern, visualisieren und zählen GCM 100 H019A00 Ausgabe 15.7.96

Mehr

Stepperfocuser 2.0 mit Bootloader

Stepperfocuser 2.0 mit Bootloader Stepperfocuser 2.0 mit Bootloader Info Für den Stepperfocuser 2.0 gibt es einen Bootloader. Dieser ermöglicht es, die Firmware zu aktualisieren ohne dass man ein spezielles Programmiergerät benötigt. Die

Mehr

Installationshilfe für die T-Sinus 721X/XA und deren Komponenten unter Windows 2000

Installationshilfe für die T-Sinus 721X/XA und deren Komponenten unter Windows 2000 Installationshilfe für die T-Sinus 721X/XA und deren Komponenten unter Windows 2000 In der folgenden Installationshilfe wird davon ausgegangen, dass alle aus dem Internet herunter geladenen Pakete in den

Mehr

EasyWk DAS Schwimmwettkampfprogramm

EasyWk DAS Schwimmwettkampfprogramm EasyWk DAS Schwimmwettkampfprogramm Arbeiten mit OMEGA ARES 21 EasyWk - DAS Schwimmwettkampfprogramm 1 Einleitung Diese Präsentation dient zur Darstellung der Zusammenarbeit zwischen EasyWk und der Zeitmessanlage

Mehr

Inbetriebnahme der I-7188EN Serie

Inbetriebnahme der I-7188EN Serie Inbetriebnahme der I-7188EN Serie Ethernet nach RS-232/485 Gateways, 1 bis 8 serielle Ports I-7188E1(D) I-7188E2(D) I-7188E3(D) I-7188E3-232(D) I-7188E4(D), I-7188E5(D) I-7188E5-485(D) 7188E8(D) I-7188E

Mehr

Hardware und Systemvoraussetzungen um Softwareupdate, Settingslisten usw. auf einen Receiver mit RS232 Schnittstelle zu überspielen:

Hardware und Systemvoraussetzungen um Softwareupdate, Settingslisten usw. auf einen Receiver mit RS232 Schnittstelle zu überspielen: Hardware und Systemvoraussetzungen um Softwareupdate, Settingslisten usw. auf einen Receiver mit RS232 Schnittstelle zu überspielen: Um Softwareupdates, Settingslisten usw. vom PC auf einen Receiver mit

Mehr

Serielle Kommunikation mit dem Arduino. Teil 1: Das Serial Peripheral Interface (SPI)

Serielle Kommunikation mit dem Arduino. Teil 1: Das Serial Peripheral Interface (SPI) Serielle Kommunikation mit dem Arduino Teil 1: Das Serial Peripheral Interface (SPI) Axel Attraktor e.v. 4. Juni 2012 Axel (Attraktor e.v.) 5. Arduino-Stammtisch 4. Juni 2012 1 / 25 Serielle Kommunikation

Mehr

DIPLOMARBEIT. Entwurf und Implementierung eines modularen USB-Stacks für eingebettete Controller ohne Betriebssystem. Uwe Pfeiffer

DIPLOMARBEIT. Entwurf und Implementierung eines modularen USB-Stacks für eingebettete Controller ohne Betriebssystem. Uwe Pfeiffer Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur DIPLOMARBEIT Entwurf und Implementierung eines modularen USB-Stacks für eingebettete

Mehr

Starter-Kit AMS 5812

Starter-Kit AMS 5812 User Guide Starter-Kit AMS 5812 November 2008 - Rev 1.0 - Page 1/11 INHALTSVERZEICHNIS EINLEITUNG 3 HARDWARE - BBAMS5812 3 SOFTWARE I2C_AMG 4 Installation der Software 5 Bedienungsoberfläche der Software

Mehr

ANWENDERHANDBUCH. Zutritts-Konfigurator PC IT Mini, Version 1.1.2. Hilfsprogramm für Anlagen mit dezentraler Zutrittskontrolle

ANWENDERHANDBUCH. Zutritts-Konfigurator PC IT Mini, Version 1.1.2. Hilfsprogramm für Anlagen mit dezentraler Zutrittskontrolle ANWENDERHANDBUCH Hilfsprogramm für Anlagen mit dezentraler Zutrittskontrolle Zutritts-Konfigurator PC IT Mini, Version 1.1.2 ahb_pcitmini_art0010411_1v2.doc 2 06/2005 Inhaltsverzeichnis Übersicht...2 Systemvoraussetzungen...3

Mehr

Quanton Manual (de) Datum: 20.06.2013 URL: http://wiki:8090/pages/viewpage.action?pageid=9928792 )

Quanton Manual (de) Datum: 20.06.2013 URL: http://wiki:8090/pages/viewpage.action?pageid=9928792 ) Datum: 20.06.2013 URL: http://wiki:8090/pages/viewpage.action?pageid=9928792 ) Inhaltsverzeichnis 1 quanton flight control rev. 1 3 1.1 Anschlüsse für Peripheriegeräte 3 1.1.1 Eingänge / Ausgänge 3 1.1.2

Mehr

RO-Serie CAN-Übertragungsprotokoll

RO-Serie CAN-Übertragungsprotokoll RO-Serie CAN-Übertragungsprotokoll Juni 2009 1 EINLEITUNG...3 2 REGISTER-ZUGRIFFE...4 2.1 Was sind überhaupt Register?... 4 2.2 Registerzugriff mit 8/ 16 oder 32 Bit-Datenbreite... 4 2.3 Registerbelegung...

Mehr

EX-6032. 2 x RS-232 zu Ethernet / IP. Bedienungsanleitung. 6. Anschlüsse. 7. Technische Daten. Seriell 9 Pin D-SUB Stecker (Port 1 und 2) :

EX-6032. 2 x RS-232 zu Ethernet / IP. Bedienungsanleitung. 6. Anschlüsse. 7. Technische Daten. Seriell 9 Pin D-SUB Stecker (Port 1 und 2) : 6. Anschlüsse Bedienungsanleitung Seriell 9 Pin D-SUB Stecker (Port 1 und 2) : Pin Signal Pin Signal Pin Signal 1 CDC 4 DTR 7 RTS 2 RXD 5 GROUND 8 CTS 3 TXD 6 DSR 9 RI DB 9M EX-6032 7. Technische Daten

Mehr

DC-FW400 SE. 3+1 Port IEEE 1394 FireWire TM PCI-Controller

DC-FW400 SE. 3+1 Port IEEE 1394 FireWire TM PCI-Controller DC-FW400 SE 3+1 Port IEEE 1394 FireWire TM PCI-Controller Wichtige Information zur Datensicherheit Vor der Installation und bei Änderungen der Konfiguration des DC-FW400 SE sollte unbedingt eine Datensicherung

Mehr

Konfiguratorsoftware. für. M-Bus Impulssammler

Konfiguratorsoftware. für. M-Bus Impulssammler Konfiguratorsoftware für M-Bus Impulssammler Typ : M-Count 2C Seite 2 Inhaltsverzeichnis 1. Installation des M-Bus Konfigurators...3 2. Starten des M-Bus Konfigurators...3 3. Basiskonfiguration...5 4.

Mehr

USB-Parametriersoftware 1 7831/00 Installation Bedienung

USB-Parametriersoftware 1 7831/00 Installation Bedienung USB-Parametriersoftware 1 7831/00 Installation Bedienung Ausgabe 2/2007 Identnummer 400 232 795 1 Lieferumfang / Inhalt 1. CD-ROM 2. USB-Anschlußkabel 2 Einleitung Die USB-Parametriersoftware ermöglicht

Mehr

I 2 C. ANALYTICA GmbH

I 2 C. ANALYTICA GmbH HANDBUCH ANAGATE I 2 C ANALYTICA GmbH Vorholzstraße 36 Tel. +49 721 35043-0 email: info@analytica-gmbh.de D-76137 Karlsruhe Fax: +49 721 35043-20 WWW: http://www.analytica-gmbh.de 1 2004, Analytica GmbH,

Mehr

Jinx! Konfiguration für LED-Player und LED-Controller-L

Jinx! Konfiguration für LED-Player und LED-Controller-L Jinx! Ist eine sehr mächtige LED-Software zur Ansteuerung von LED-Controllern über verschiedene Protokolle und Schnittstellen. Die Konfiguration dieses Programmes für den Betrieb mit LED-Controller-L oder

Mehr

Printer Driver Vor der Verwendung der Software

Printer Driver Vor der Verwendung der Software 3-876-168-31 (1) Printer Driver Installationsanleitung In dieser Anleitung wird die Installation des Druckertreibers für Windows Vista beschrieben. Vor der Verwendung der Software Lesen Sie vor der Verwendung

Mehr

Vorbereitung des seriellen Kabels (RS232, 9-Pin)

Vorbereitung des seriellen Kabels (RS232, 9-Pin) Zusammenfassung Ihre Set-Top-Box (im weiteren STB abgekürzt) wurde mit einer stabilen und einfach zu bedienenden Software ausgeliefert. Durch ständige Tests versuchen wir auch die kleinsten Fehler oder

Mehr

M230 WIN App D 2.3.0

M230 WIN App D 2.3.0 o WIN App D 2.3.0 Inhalt Allgemein... 1 Anzeigeoptionen des... 2 Systemvoraussetzungen... 3 Installation... 4 Grundeinstellungen vornehmen... 5 Connection Setup... 6 mit Netzwerk-Einbindung... 7 Multiroomsystem

Mehr

Bluetooth* RS232 Adapter Artikelnummer: 1406

Bluetooth* RS232 Adapter Artikelnummer: 1406 Bluetooth* RS232 Adapter Artikelnummer: 1406 Benutzerhandbuch (Version 1.0) Inhaltsverzeichnis 1.EINLEITUNG... 3 1.1 Lieferumfang...3 1.2 Geräteansicht...4 2. INBETRIEBNAHME... 4 3.SOFTWARE - RS323 CONFIGTOOL...

Mehr

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

DTMF Sender. Es können 252 Zeichen maximal am Stück übertragen werden; die Länge des Strings wird mit einem Byte übertragen. DTMF Sender Author DK1RI, Version V02.1, 20160104 This project can be found in https://www.github.com/dk1ri Einleitung Dieses Interface ist eine Vorlage für ein Interface, das ein Gerät, das sich mit DTMF

Mehr

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

Microcontroller Programmierung. Ein PDV-Vertiefungsprojekt von: Chr. Schulz, P. Simon und D. Stein Sommersemester 2005 Version 1.0 Microcontroller Programmierung Ein PDV-Vertiefungsprojekt von: Chr. Schulz, P. Simon und D. Stein Sommersemester 2005 Version 1.0 Inhalt Einführung Die Hardware Die Schaltlogik Implementierung der Steuerung

Mehr

GMM WLAN-Transmitter

GMM WLAN-Transmitter Inhaltsverzeichnis 1. Produktbeschreibung... 2 2. Konfiguration... 2 Verbindung... 2 Konfiguration der Baudrate... 2 Access Point... 3 3. Datenübertragung... 3 4. Technische Daten... 4 Kontakt... 5 1 1.

Mehr

SOFTWARE. ekey TOCAhome pc. Herausgeber: ekey biometric systems GmbH Lunzerstraße 64 A-4030 Linz office@ekey.net n www.ekey.net

SOFTWARE. ekey TOCAhome pc. Herausgeber: ekey biometric systems GmbH Lunzerstraße 64 A-4030 Linz office@ekey.net n www.ekey.net SOFTWARE ekey TOCAhome pc Herausgeber: ekey biometric systems GmbH Lunzerstraße 64 A-4030 Linz office@ekey.net n www.ekey.net Ihr Finger ist der Schlüssel Inhaltsverzeichnis 1. ZWECK DIESES DOKUMENTS 3

Mehr

Mod_com.lib. Inhalt. WAGO-I/O-PRO 32 Bibliothek

Mod_com.lib. Inhalt. WAGO-I/O-PRO 32 Bibliothek Anhang A Weitere Bibliotheken WAGO-I/O-PRO 32 Bibliothek Mod_com.lib Inhalt ADD_DESC (Datentyp)...2 ADD_PI_INFORMATION...4 CRC16...6 FBUS_ERROR_INFORMATION...7 GET_DIGITAL_INPUT_OFFSET...8 GET_DIGITAL_OUTPUT_OFFSET...10

Mehr

PARALLELE PCI-SCHNITTSTELLENKARTE

PARALLELE PCI-SCHNITTSTELLENKARTE PARALLELE PCI-SCHNITTSTELLENKARTE Schnellinstallationsanleitung Einleitung Vielen Dank für den Kauf dieser IEEE 1284 PCI-Schnittstellenkarte. Diese Karte ermöglicht es dem Anwender, sein PC-System um zwei

Mehr

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

A20_PCI. ARCNET Controller Karte für PCI Bus. Gerätebeschreibung. 2003 TK Systemtechnik GmbH Nr. TK-04-037-F-1.2 A20_PCI ARCNET Controller Karte für PCI Bus Gerätebeschreibung 2003 TK Systemtechnik GmbH Nr. TK-04-037-F-1.2 Angaben zur Version Dokument-Nr. Beschreibung Datum TK-04-037-F-1.0 Ausgabe 1 17.04.2001 TK-04-037-F-1.1

Mehr

Messen, Steuern, Regeln mit USB

Messen, Steuern, Regeln mit USB Messen, Steuern, Regeln mit USB Vorwort Seit der Einführung von Windows 98 ist der Universelle Serielle Bus (USB) eine wichtige Schnittstelle jedes modernen PCs. Viele Nachteile der bisherigen Schnittstellen-Vielfalt

Mehr

I2C-Echtzeituhr am Atmel AVR

I2C-Echtzeituhr am Atmel AVR Fachbereich Elektrotechnik und Informatik Labor für Angewandte Informatik und Datenbanken Praktikum Mikrocontroller und DSP (EMD) Prof.Dr.-Ing. E. Coersmeier I2C-Echtzeituhr am Atmel AVR Name, Vorname

Mehr

Über die Status-Befehle kann die Peripherie der gesamten Hard- und Firmware abgefragt werden.

Über die Status-Befehle kann die Peripherie der gesamten Hard- und Firmware abgefragt werden. DOKUMENTATION SCHWABENPLAN MC-PROTOKOLL 1. EINLEITUNG Das Schwabenplan MC-Protokoll wurde entwickelt um jede Hauptplatine aus unserem Lieferprogramm mit einer Software zu verbinden. Die Programmiersprache

Mehr

miditech 4merge 4-fach MIDI Merger mit :

miditech 4merge 4-fach MIDI Merger mit : miditech 4merge 4-fach MIDI Merger mit : 4 x MIDI Input Port, 4 LEDs für MIDI In Signale 1 x MIDI Output Port MIDI USB Port, auch für USB Power Adapter Power LED und LOGO LEDs Hochwertiges Aluminium Gehäuse

Mehr

Software-Projekt: Mensch ärgere Dich nicht. Dokumentation Softwareprojekt: Mensch ärgere Dich nicht

Software-Projekt: Mensch ärgere Dich nicht. Dokumentation Softwareprojekt: Mensch ärgere Dich nicht Dokumentation Softwareprojekt: Mensch ärgere Dich nicht Das Programm Mensch ärgere Dich nicht ermöglicht das Spielen des gleichnamigen Spieles über Netzwerke. Jeder Spieler verfügt dabei über einen Clienten,

Mehr

Einbinden eines Mikrocontrollers in ein EtherCAT-Netzwerk mit Hilfe eines Anybus-S-Moduls für EtherCAT

Einbinden eines Mikrocontrollers in ein EtherCAT-Netzwerk mit Hilfe eines Anybus-S-Moduls für EtherCAT Applikationsbeispiel Einbinden eines Mikrocontrollers in ein EtherCAT-Netzwerk mit Hilfe eines Anybus-S-Moduls für EtherCAT Haftungsausschluß Die Schaltungen in diesem Dokument werden zu Amateurzwecken

Mehr

Versuch CAN-Bus Anwendung im Kfz

Versuch CAN-Bus Anwendung im Kfz µc Hochschule für Technik und Wirtschaft Dresden (FH) Versuch CAN-Bus Anwendung im Kfz Praktikum Automobilelektronik 1 Allgemeiner Aufbau des Versuches Die im Versuch verwendeten Platinen besitzen interne

Mehr

Konfigurieren eines HHR Gerät, um es über eine CBX800 an Profibus anzubinden

Konfigurieren eines HHR Gerät, um es über eine CBX800 an Profibus anzubinden Konfigurieren eines HHR Gerät, um es über eine CBX800 an Profibus anzubinden Benötigte Hardware: - CBX 800 - BM3x0 Profibus Interface-Modul - Handscanner + Kabel CAB 509/512 1. Das HHR Gerät als RS232

Mehr

Handbuch B4000+ Preset Manager

Handbuch B4000+ Preset Manager Handbuch B4000+ Preset Manager B4000+ authentic organ modeller Version 0.6 FERROFISH advanced audio applications Einleitung Mit der Software B4000+ Preset Manager können Sie Ihre in der B4000+ erstellten

Mehr

Inbetriebnahme WAGO Controller mit analogen Eingangs- und Ausgangsmodulen

Inbetriebnahme WAGO Controller mit analogen Eingangs- und Ausgangsmodulen Inbetriebnahme WAGO Controller mit analogen Eingangs- und Ausgangsmodulen Bild 1 Seite 1 von 11 Vorgehensweise: 1.) Anschluss des Feldbuscontrollers an einen PC Verbinden Sie zunächst das schwarze WAGO

Mehr