B.Kainka

PC-Schnittstellen Angewandt

Elektor-Verlag 7.Auflage 2000


Warum eine Neuauflage, wo es doch für das Buch einen Windows-Nachfolger gibt?

Es gibt nach wie vor Gründe, DOS für Mess- und Steuerungsaufgaben einzusetzen. So mancher alter PC oder in die Jahre gekommener Laptop kann noch für solche Aufgaben eingesetzt werden. Viele über 10 Jahre alte XTs arbeiten immer noch fehlerfrei. Und wenn dann schließlich die Festplatte ihren Geist aushaucht, reicht auch eine Diskette für das Betirebssystem und das Anwenderprogramm. Außerdem sind DOS-Programme auf der gleichen Maschine bis zu 1000 mal schneller. All diese guten Gründe führten zu einer anhaltenden Nachfrage, die den Verlag veranlasst hat, das Buch neu aufzulegen.

Das Buch kann direkt bei www.elektor.de bestellt werden.

Die Beispielprogramme zum Buch findet man auf der Download-Seite


Vorwort

Der PC hat in den letzten Jahren auf breiter Front Einzug in den Hobbybereich gehalten. Neben der Nutzung immer besserer Software bieten Versuche mit Hardware-Erweiterungen zum Messen und Steuern realer Prozesse einen besonderen Reiz. Es mangelt nicht an Bauanleitungen und Vorschlägen für umfangreiche und interessante Projekte. Fachzeitschriften und Bücher beschäftigen sich intensiv mit diesem Themenbereich.

Meist werden Projekte mit erheblichem Hardwareaufwand vorgestellt, die den Geldbeutel arg strapazieren. Ausgangspunkt der Arbeit an diesem Buch war die Frage: Könnte es nicht auch einfacher gehen? Für sehr viele Anwendungen lassen sich Lösungen mit minimalen Hardwarekosten finden, wenn man auf extreme Leistungsfähigkeit verzichtet. Solche Einschränkungen erscheinen grundsätzlich gerechtfertigt, wenn es in erster Linie darum geht, neue Erfahrungen zu sammeln und sich spielerisch mit der Prozeßdatenverarbeitung zu beschäftigen.

Ich hoffe, mit diesem Buch vielen Lesern Anregungen für eigene, kreative Betätigung auf dem Gebiet der computergestützten Meß-, Steuer- und Regelungstechnik geben zu können.

B.Kainka


Inhalt

1 Einleitung

2 Die serielle Schnittstelle
2.1 Portzugriffe in Basic
2.2 Portzugriffe in Pascal

3 Direkte digitale Ausgaben
3.1 Zeitschaltuhr
3.2 Ansteuerung von Servos
3.3 Schrittmotorsteuerung

4 Direkte digitale Eingaben
4.1 Zeitliche Registrierung von Ereignissen
4.2 Nachbildung logischer Schaltungen

5 Einfache Analog/Digital-Wandler
5.1 Messung von Widerständen
5.2 Spannungsmessung
5.3 Ein 4-Kanal-A/D-Wandler
5.4 Messung an einem Transistor

6 Frequenzmessung
6.1 Temperatur- und Luftfeuchtemessung
6.2 Ein Spannungs/Frequenz-Wandler

7 Serielle Datenübertragung
7.1 Serielle Ausgabe
7.2 Serielle Eingabe
7.3 Ein seriell auslesbarer A/D-Wandler
7.4 Ein digitaler Recorder

8 Ein Mehrzweck-Interface
8.1 Automatischer IC-Test

9. Der parallele Druckerport

10 Parallele Datenausgaben
10.1 Ein Funktionsgenerator
10.2 Steuerung einfacher Maschinen

11 16-Bit-Porterweiterung
11.2 Erweiterung auf 32 Portleitungen
11.2 Ein Eprommer

12. Der I²C-Bus
12.1 Ansteuerung über die parallele Schnittstelle
12.2 Anschluß an die serielle Schnittstelle
12.3 Der Porterweiterungsbaustein PCF8574
12.4 Der A/D- und D/A-Wandler PCF8591
12.5 Ein Speicheroszilloskop

13 Der Joystick-Port
13.1 Spannungsmessung
13.2 Grenzwertüberwachung
13.3 Ein Schaltausgang
13.4 Ein Digitalzähler

Anhang - Literatur


1. Einleitung

Jeder Versuch, mit Computern reale Prozesse zu steuern oder zu überwachen, erfordert zunächst einmal eine geeignete Verbindung zur Außenwelt des Rechners. Ein Programm muß in der Lage sein, Informationen von außen zu erfassen und Steuerungen an äußeren Geräten vorzunehmen. Die verarbeiteten Informationen können in binärer Form, also als Ja/Nein- Entscheidungen, oder als analoge Größen (größer/kleiner) vorliegen.

Das erforderliche Tor zur Außenwelt wird durch Interfaces geöffnet. Für PCs nach dem Industriestandard haben sich folgende Formen von Interfaces durchgesetzt:

- Erweiterungskarten werden in den Rechner gesteckt und erlauben höchste Arbeitsgeschwindigkeiten, sind allerdings auch mit hohen Kosten verbunden.

- Standardschnittstellen verbinden den PC mit externen Interface-Schaltungen. Üblich sind z.B. Interfaces an der seriellen RS232-Schnittstelle, die sich relativ preiswert aufbauen lassen.

- Interfaces mit einem eigenen Prozessor führen Aufgaben weitgehend ohne Datenaustausch mit dem PC durch. Der Anwender muß sich dabei zusätzlich mit der Programmierung dieser Systeme auseinandersetzen.

- Die ohnehin vorhandenen Schnittstellen des PC, also die serielle Schnittstelle, die Druckerschnittstelle und oft auch der Joystick-Anschluß, lassen sich direkt als Interface nutzen. Damit erübrigt sich für zahlreiche Anwendungen jegliche zusätzliche Hardware.

Die direkte Verwendung vorhandener Schnittstellen eignet sich besonders für einfache Versuche. So lassen sich z.B. an die serielle Schnittstelle ohne weiteres Schalter oder Leuchtdioden direkt anschließen, womit viele interessante Projekte möglich werden. Die Druckerschnittstelle stellt eine größere Zahl direkt ansprechbarer Leitungen zu Verfügung, mit denen hohe Übertragungsgeschwindigkeiten zu erreichen sind.

Viele Einschränkungen lassen sich durch einfache Zusatzschaltungen überwinden. So ist die Erfassung von Spannungen mit wenigen zusätzlichen Bauteilen möglich, wenn man etwas komplexere Programme und geringere Geschwindigkeiten in Kauf nimmt. Auch Projekte mit vielen Ein/Ausgabeleitungen lassen sich mit geringem zusätzlichen Aufwand durchführen.

Allgemein werden in diesem Buch Verfahren vorgestellt, die mit weniger Hardware und etwas rechenzeitintensiveren Programmen arbeiten. Der Leser sollte Vorerfahrungen mit einer Programmiersprache haben und über Grundkenntnisse der Elektronik verfügen. Die vorgestellten Schaltungen sind meist so einfach, daß sie problemlos auf Lochrasterplatinen aufgebaut werden können. Alle Projekte in diesem Buch sind in sich geschlossenen und eignen sich für den direkten Nachbau. Darüberhinaus stellen sie Bausteine für weitergehende Entwicklungen zur Verfügung, wobei die komplexeren Verfahren die sichere Anwendung geeigneter Meßgeräte erforderlich machen. Der interessierte Leser sollte z.B. über ein Oszilloskop verfügen.

Die in diesem Buch verwendeten Programmiersprachen sind GW- Basic (bzw. kompatible Nachfolger wie z.B. Q-Basic) und Turbo-Pascal ab Version 4.0. Alle Programme in diesem Buch sind auch auf einer Diskette erhältlich.