ebook img

USB in der Elektronik : die USB-Schnittstelle für praktische Anwendungen am PC einsetzen : [von einfachen Lichtspielen, RS232 Anbindungen, 8 Bit I/0 bis zu I2C und SPI] PDF

206 Pages·2008·5.36 MB·German
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview USB in der Elektronik : die USB-Schnittstelle für praktische Anwendungen am PC einsetzen : [von einfachen Lichtspielen, RS232 Anbindungen, 8 Bit I/0 bis zu I2C und SPI]

4089-5 U1+U4 21.02.2008 16:54 Uhr Seite 1 FRANZIS FRANZIS PC & ELEKTRONIK FRANZIS PC & ELEKTRONIK PC+ELEKTRONIK Dipl.-Ing. Jürgen Hulzebosch Dipl.-Ing. Jürgen Hulzebosch USB inderElektronik VR8oS nB2 ie3t i2In/ AfOanc bbhiiesnn dz uuLni Icg2heCtns up, niedl SenP,I k Die Schnittstelle für praktische Anwendungen am PC einsetzen i n USB hat sich in den letzten Jahren zu einer universellen Schnitt- o Aus dem Inhalt: stelle entwickelt. Keine Elektronik- und Computerbranche bleibt r von dieser Schnittstelle verschont. • Messen, Steuern und Regeln t Der in diesem Buch verwendete USB-Baustein ohne integrierten mit PC-Schnittstellen k Mikrocontroller wird Ihnen zeigen, wie interessante USB- • Frequenzen erzeugen und anwenden e Steuerungen aufgebaut werden können. • Temperatur mit einem NTC messen l Das Buch startet mit einfachen „LED an/LED aus“-Beispielen. • 8-Kanal-Logicanalyzer E Experimente mit einer Alarmanlage, Wasserstandsüberwachung, • Steuerung von Schrittmotoren LDRs und Fotodioden vertiefen das gelernte Wissen. Anschließend • EEProm-Daten ändern r werden die im Buch enthaltenen Beispiele komplexer: Messungen von Helligkeit oder Temperatur mit einem selbst gebauten • und vieles mehr e Analog-/Digital-Wandler vermitteln weitere Grundlagen. d Manch einer wird sich vielleicht wundern, wie einfach der selbst gebaute A/D-Wandler mit ein paar Zeilen in der Anwendungssoftware n über USB behandelt werden kann. Ein Fernbedienungstester mit i Fotodiode, ein Voltmeter und Batterietester, ein Kennwortdaten- speicher mit einem EEProm, Schrittmotorsteuerungen und die B Verwendung als USB-Dongle sind weitere praktische Beispiele. USB Da der verwendete Baustein auch als USB-Seriell-Konverter für S Mikrocontroller-Anwendungen dienen kann, werden auch diese Anwendungsmöglichkeiten aufgeführt. Die Umsetzung einer USB-I2C-Schnittstelle wird zum Kinderspiel, U in der Elektronik da ein Software-Logikanalyzer das Daten- und Taktsignal im tatsächlich erzeugten Timingdiagramm visualisiert. Sie können in fünf einfachen Schritten eine universelle USB-I2C-Schnittstelle Die USB-Schnittstelle für praktische Anwendungen am PC einsetzen entwickeln. Die einzelnen Beispiele werden detailliert erläutert und sind umfangreich illustriert, damit die Zusammenhänge von der Visual- Basic-Software zur Hardware und mit dem verwendeten USB- Baustein nachvollzogen und für eigene Ideen genutzt werden ISBN 978-3-7723-4089-5 können. Auf CD-ROM: Der Autor verwendet den USB-Baustein in der Praxis als USB- Beispielprogramme • Seriell-Konverter für industrielle Steuerungen, für USB-Schrittmotor- Euro 29,95 [D] Datenblätter steuerungen und als Programmieradapter für die neue Atmel- • AT89LP-8051-Familie. Besuchen Sie uns im Internet: www.franzis.de Hulzebosch Manuals • 4089-5 Titelei 21.02.2008 16:54 Uhr Seite 1 Dipl.-Ing. Jürgen Hulzebosch USB in der Elektronik 4089-5 Titelei 21.02.2008 16:54 Uhr Seite 2 4089-5 Titelei 21.02.2008 16:54 Uhr Seite 3 FRANZIS PC+ELEKTRONIK Dipl.-Ing. Jürgen Hulzebosch USB inderElektronik Die USB-Schnittstelle für praktische Anwendungen am PC einsetzen 4089-5 Titelei 21.02.2008 16:54 Uhr Seite 4 Bibliografische Information der Deutschen Bibliothek Die Deutsche Bibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte Daten sind im Internet über http://dnb.ddb.deabrufbar. Hinweis Alle Angaben in diesem Buch wurden vom Autor mit größter Sorgfalt erarbeitet bzw. zusammengestellt und unter Einschaltung wirk- samer Kontrollmaßnahmen reproduziert. Trotzdem sind Fehler nicht ganz auszuschließen. Der Verlag und der Autor sehen sich deshalb gezwungen, darauf hinzuweisen, dass sie weder eine Garantie noch die juristische Verantwortung oder irgendeine Haftung für Folgen, die auf fehlerhafte Angaben zurückgehen, übernehmen können. Für die Mitteilung etwaiger Fehler sind Verlag und Autor jederzeit dankbar. Internetadressen oder Versionsnummern stellen den bei Redaktionsschluss verfügbaren Informationsstand dar. Verlag und Autor über- nehmen keinerlei Verantwortung oder Haftung für Veränderungen, die sich aus nicht von ihnen zu vertretenden Umständen ergeben. Evtl. beigefügte oder zum Download angebotene Dateien und Informationen dienen ausschließlich der nicht gewerblichen Nutzung. Eine gewerbliche Nutzung ist nur mit Zustimmung des Lizenzinhabers möglich. © 2008 Franzis Verlag GmbH, 85586 Poing Alle Rechte vorbehalten, auch die der fotomechanischen Wiedergabe und der Speicherung in elektronischen Medien. Das Erstellen und Verbreiten von Kopien auf Papier, auf Datenträgern oder im Internet, insbesondere als PDF, ist nur mit ausdrücklicher Genehmigung des Verlags gestattet und wird widrigenfalls strafrechtlich verfolgt. Die meisten Produktbezeichnungen von Hard- und Software sowie Firmennamen und Firmenlogos, die in diesem Werk genannt werden, sind in der Regel gleichzeitig auch eingetragene Warenzeichen und sollten als solche be- trachtet werden. Der Verlag folgt bei den Produktbezeichnungen im Wesentlichen den Schreibweisen der Hersteller. Satz:Fotosatz Pfeifer, 82166 Gräfelfing art & design:www.ideehoch2.de Druck:Bercker, 47623 Kevelaer Printed in Germany ISBN 978-3-7723-4089-5   Vorwort USB hat sich in den letzten Jahren zu einer universellen Schnittstelle entwickelt. Neben der PC-Industrie bleibt kaum eine Elektronikbranche von USB verschont, sei es das Autoradio mit Anschluss für USB-MP3-Player, der digitale Satellitenemp- fänger für Updates über USB zur Übermittlung von aufgezeichneten Videos oder Bildern auf den PC oder auch jedes etwas modernere Handy mit MP3 und inte- grierter Kamera, das einen USB-Anschluss besitzt. USB steht für Universal Serial Bus, Version 1.0 wurde 1995 von einem Konsortium mehrerer großer Elektronik Unternehmen entwickelt. Im Vergleich zur seriellen oder parallelen Schnittstelle eines PCs hat USB eine gute Übertragungsgeschwindigkeit. USB-Geräte können während des Betriebes hinzu- gesteckt oder wieder entfernt werden. Beschäftigt man sich im Detail mit USB, dann wirkt die Komplexität dieser Technik zunächst ein wenig abschreckend. Konnte man früher noch mit der parallelen oder seriellen Schnittstelle des PCs die eigene Elektronik einfach steuern und regeln, muss man sich heute doch zwangsläufig mit USB auseinandersetzen, da PCs neues- ter Generation nur noch mit USB ausgestattet sind. Umfangreiche Literatur findet man im Internet, bei Herstellern von Mikrocontrol- lern und bei den verschiedensten Verlagsgesellschaften. Meistens enthalten die dort beschriebenen USB-Controller einen Mikroprozessor-Kern, wodurch dann das scheinbar „einfache“ USB doch wieder kompliziert wird. Hier soll nicht auf jedes Detail aller möglichen Funktionalitäten von USB eingegan- gen werden. Der hier verwendete FTDI-USB-Baustein besitzt keinen integrierten Mikrocontroller. Das vorliegende Buch wird Ihnen zeigen, wie interessante USB- Steuerungen oder USB-Datenerfassungssysteme zum Teil auch gänzlich ohne Mi- krocontroller aufgebaut werden können. Das ursprüngliche Motiv des Bausteinherstellers FTDI war es, Konverter von USB zur seriellen und parallelen Schnittstelle zu entwickeln, um moderne PCs für diese Schnittstellen über USB nachzurüsten zu können. Das war auch der erste Ansatz des Autors, sich persönlich mit USB und FTDI-Bau- steinen auseinanderzusetzen, da der neue PC keine serielle Schnittstelle mehr hatte und  Vorwort ein Mikrocontroller über eine serielle Schnittstelle programmiert werden musste. Schnell wurde festgestellt, dass zwar die einfache serielle Übertragung funktionierte, doch das Schalten einzelner Signale der seriellen Schnittstelle war extrem langsam im Vergleich zur normalen seriellen (RS232)-Schnittstelle eines alten PCs. Die Frage „Ist das angeblich so schnelle USB doch langsam?“ interessierte den Autor, und aus dieser Fragestellung her- aus ist letztendlich dieses Buch mit vielen praktischen Beispielen entstanden. Im täglichen Leben gibt es viele Situationen, die sich lohnen, elektronisch mit Hilfe eines Computers gemeistert zu werden. Das Buch startet mit einfachen „LED An – LED Aus“ – und Ampel-Versuchen über USB. Das Beispiel einer Alarmanlage und wie man den Was- serstand in einem Aquarium überwachen kann, vertiefen das gelernte Wissen. Auch etwas Spaß soll nicht zu kurz kommen. Haben Sie noch irgendwo ein Quarzuhrwerk, das nach einem kleinen Umbau über USB zum Flaschendrehspiel mutieren kann? Anschließend werden die vorgestellten Beispiele komplexer. Helligkeits- oder Tempera- turmessungen mit einem selbstgebauten A/D-Wandler vermitteln weitere Grundlagen, die sowohl für die Software und für USB als auch für die Hardware notwendig sind. Manch einer wird sich danach vielleicht wundern, wie problemlos ein selbstgebauter A/D-Wandler mit ein paar Zeilen in der Anwendungssoftware behandelt werden kann. Ein kleiner Fernbedienungstester mit Fotodiode, ein Voltmeter, einKennwort-Datenspei- cher und die Verwendung als USB-Dongle sind weitere Anwendungsbeispiele. Da der USB-Adapter auch als USB-Seriell-Konverter für Mikrocontroller-Anwendungen dienen kann, werden zusätzliche Softwarebeispiele für die Verwendung mit serieller Kommunikation aufgeführt. Der geübte Elektroniker wird lernen, wie man die Ein- und Ausgabeleitungen auch für komplexe Schnittstellen wie I2C oder SPI verwenden kann. Die Umsetzung einer USB- I2C-Schnittstelle wird zum Kinderspiel, da ein Software-Logikanalyzer das Daten- und Taktsignal im tatsächlich erzeugten Timing-Diagramm visualisiert. Sie können somit in fünf einfachen Schritten eine universelle I2C-Schnittstelle entwickeln. Das letzte Softwarebeispiel in diesem Buch zeigt Ihnen die Ansätze, wie man komplexe Aufgaben, beispielsweise eine Flash-Programmierung des AT89LP Mikrocontrollers über die SPI/ISP-Schnittstelle, bewerkstelligen kann. Diejenigen, die bereits Mikrocontrollerelektronik entwickelt, aufgebaut und program- miert haben, können den in diesem Buch beschriebenen Adapter auch direkt als USB- Seriell-Konverter oder SPI/RS232-Programmieradapter einsetzen. Die einzelnen Beispiele werden detailliert erläutert und sind umfangreich illustriert, da- mit die Zusammenhänge von der Visual Basic-Software zur Hardware und in Zusam- menhang mit dem verwendeten USB-Baustein FT232R nachvollzogen und für eigene Ideen verwendet werden können. Wer nun experimentierfreudig ist und Lust hat, einige weitere Schaltungsbeispiele in die Praxis umzusetzen, sollte einen Lötkolben besitzen. Aktuelle Informationen finden Sie auf www.minimikro.de  Inhalt 1 Messen, Steuern oder Regeln mit PC-Schnittstellen. . . . . . . . . . . . . . . 11 1.1 Informationseinheiten: Daten ................................. 14 1.2 Binär zählen (logische 0 und 1) ................................ 14 1.3 „Russisches Bauernrechnen“ .................................. 15 1.4 Bits und Bytes ............................................. 16 2 USB-Grundlagen .............................................. 17 2.1 USB 1.0, 1.1, 2.0, On-The-Go .................................. 17 2.2 Strom-, Spannungs-, Geräteidentifikation der USB-Schnittstelle ..... 18 2.3 Serielle Datenübertragungen USB-RS232-SPI-I2C ................. 19 2.4 NRZI-Kodierung ............................................. 19 2.5 USB – unbekannter serieller Bus ............................... 20 2.6 USB-Transfertypen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.7 USB-Treiber ................................................ 22 2.8 USB-Anbieteridentifizierung ................................... 23 3 Hardware: USB-/Zusatzplatine und Bezugsquellen ............... 24 3.1 Hardware: USB-Flash-Adapter und Beschreibung .................. 25 3.2 Hardware: Zusatzplatine ...................................... 28 3.3 UM232R-Module von FTDI .................................... 30 3.4 Der interne Aufbau des FT232R von FTDI ......................... 32 3.5 Funktionen des FT232R von FTDI ............................... 33 3.6 Beispiel für seriellen Anschluss eines Mikrocontrollers an USB ...... 34 3.7 RS232/485-Pegelanpassung .................................. 35 3.8 Baudratengenerator ......................................... 37 4 Installation des FTDI-Treibers Version 2.X ........................ 39 4.1 USB View Utility ............................................. 42 4.2 FTDI-USB-Treiber entfernen .................................... 43  Inhalt  Kontaktaufnahme ............................................. 45 5.1 Das erste VB-Beispielprogramm aufrufen ........................ 46 5.2 Die ersten Programmaufrufe in der FTD2XX.DLL-Bibliothek .......... 47 5.3 Das Programmbeispiel 1 in Visual Basic ......................... 47 5.4 FTD2XX-Funktionen für VB deklarieren .......................... 48 5.5 Quellcode mit FT_ListDevices und FT_OpenEx .................... 49 5.6 Die weiteren Funktionsaufrufe mit FT_ListDevices ................. 52 5.7 Die Funktionsaufrufe FT_OpenEx und FT_Close. . . . . . . . . . . . . . . . . . . . 54  Lichtspiele (serielle Ausgänge DTS/RTS/TxD nutzen) ............. 55 6.1 LED an – LED aus (Aufrufe FT_ClrDtr, FT_SetDtr) ................... 56 6.2 LED aus – LED an ............................................ 59 6.3 LED an – LED aus (Aufrufe FT_ClrRts, FT_SetRts) ................... 59 6.4 LED-Blitz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 6.5 LED PWM, die Helligkeit einer LED steuern ....................... 62 6.6 Eine 2-Farben-(Duo)-LED steuern ............................... 64 6.7 Wechselblinker mit Duo-LED .................................. 67 6.8 TxD-Ausgang schalten (FT_SetBreakOn, FT_SetBreakOff) ........... 68 6.9 Beispiel einer Ampelschaltung mit drei LEDs ..................... 69 6.10 Schaltungsbeispiel USB-Leselampe ........................... 71 6.11 Schaltungsbeispiel LED als Solarzelle .......................... 71  Eingänge abfragen (Funktion FT_GetModemStatus) ................73 7.1 Eine Alarmanlage ........................................... 76 7.2 Alarm-Impulszähler .......................................... 77 7.3 Schaltungsbeispiel Alarmanlage ............................... 78 7.4 Ist die Katze da? ............................................ 80 7.5 Vorsicht Wasser ............................................. 81 7.6 LDR – Ist es hell oder dunkel? ................................. 82 7.7 Alarmanlage mit einer Lichtschranke erweitern ................... 83 7.8 LDR-Widerstand genauer ermitteln ............................. 84  Ein Quarzuhrwerk steuern (Flaschendrehspiel) ................... 89 8.1 Die Spule anschließen ....................................... 89 8.2 Software für ein Flaschendrehspiel ............................. 91 9 Bit Bang – USB gibt Gas (FT_SetBitMode, FT_Write, FT_Read) ...... 92 9.1 Der synchrone Bit Bang Mode ................................. 93 9.2 Eingangssignale D0 bis D7 mit Bit Bang abfragen (FT_GetBitMode) ... 99 Inhalt 9 9.3 Der Quellcode für Bit Bang Mode ............................ 100 9.4 Bit Bang und die Emulation anderer Schnittstellen .............. 102 10 Ein einfacher A/D-Wandler mit Bit Bang ....................... 105 10.1 A/D-Wandler-Konzept .................................... 105 10.2 Schaltbild A/D-Wandler mit einem Komparator. . . . . . . . . . . . . . . . 107 10.3 Der erste Softwaretest für A/D-Wandler ...................... 108 10.4 Das Zusammenspiel zwischen Software und USB-Hardware ..... 110 10.5 Der Quellcode zum A/D-Wandler ........................... 114 10.6 Der vorgeschaltete Operationsverstärker ..................... 117 10.7 Voltmeter-Spannungen am analogen Eingang E2 messen ....... 118 10.8 Batterietester ........................................... 122 11 Temperatur mit einem NTC messen ........................... 123 11.1 Softwarebeispiel Temperaturmessung ....................... 124 11.2 Quellcode Temperaturmessung ............................ 125 12 Frequenzen erzeugen und Anwendungen ..................... 127 12.1 Frequenzgenerator mit seriellen Schnittstellen-Signalen ........ 127 12.2 Frequenzgenerator mit Bit Bang ............................ 127 12.3 D/A-Wandler mit PWM .................................... 129 13 Kennwort Datenspeicher – FTDI Bit Bang mit I2C-EEProm ....... 133 13.1 Grundlagen des EEProm-Datenspeichers. . . . . . . . . . . . . . . . . . . . . 133 13.2 Grundlagen der I2C-Schnittstelle ........................... 133 13.3 Der Datenspeicher sucht Anschluss ......................... 135 13.4 Vorüberlegungen ........................................ 135 13.5 In fünf Schritten zum Erfolg ............................... 137 13.6 Daten-„Fishing“ ......................................... 144 13.7 Bedienung der Kennwortspeicher-Software. . . . . . . . . . . . . . . . . . . 147 13.8 Kennwortspeicher-Software – Auszüge aus dem Quellcode ..... 148 13.9 Softwarebeispiel I2C-Zweidrahtverbindung ................... 150 14 IR-Fernbedienung testen, Fotodiode im Einsatz ................ 153 14.1 Infrarot-Datenübertragung im RC5-Code ..................... 154 14.2 Beispielsoftware IR-Fernbedienungstest ..................... 155 14.3 Quellcode IR-Fernbedienungstest .......................... 158 14.4 Tochterblitz mit Fotodiode ................................ 159 14.5 Auswertungen in einem Timing-Diagramm ................... 160

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.