Lade Inhalt...

Entwicklung von Praktikumsversuchen mit einem PIC-Controller

©2009 Diplomarbeit 96 Seiten

Zusammenfassung

Inhaltsangabe:Einleitung:
Heutzutage befinden sich in nahezu allen elektronischen Geräten Mikrocontroller. Diese universell einsetzbaren Ein-Chip-Systeme können je nach Anwendung individuell programmiert werden. Sie kommen zum Einsatz wenn es darum geht, Steuerungsprobleme zu lösen und dabei den Platzbedarf so gering wie möglich zu halten.
Sie ersetzen Schaltungen, deren Realisierung mit analogen oder diskreten Bauteilen einen mehr oder weniger hohen Arbeits- und Zeitaufwand erfordern würde. Da sie in Applikationen eingebettet sind, werden sie als ‘Embedded Systems’ bezeichnet.
Studierende der Fachrichtung Elektrotechnik an der Hochschule Augsburg sollen anhand motivierender praktischer Versuche in den Umgang mit Mikrocontrollern eingeführt werden. Deshalb ist die Absolvierung eines Mikrocontrollerpraktikums Teil dieses Studiums. Auf Grundlage eines neuen Entwicklungsboards sollen nun Versuche erstellt werden, die einen guten Einblick in das Arbeiten mit Embedded Systems vermitteln. Inhaltsverzeichnis:Inhaltsverzeichnis:
KurzfassungII
AufgabenstellungIII
InhaltsverzeichnisIV
1.Einführung1
2.Vorstellung der Entwicklungswerkzeuge2
2.1PIC Universal Board2
2.2Mikrocontroller PIC 18F4583
2.3MPLAB IDE v8.10 mit C18-Compiler v3.225
2.4USB PIC Programmer7
3.Versuchsplattformen10
3.1Ideensammlung10
3.1.1Laufschrift auf den 7-Segment Anzeigen10
3.1.2Auslesen einer Matrixtastatur und Ausgabe auf dem LCD10
3.1.3Entfernungsmesser mit Ultraschall11
3.1.4Temperaturregelung mit Lüfter11
3.1.5Zählungen mit Lichtschranke11
3.1.6Drehzahlsteuerung und -messung12
3.1.7Software-Radio12
3.1.8RFID Experiment12
3.1.9Sprachausgabe/-eingabe13
3.1.10Geschwindigkeitsmessung mit Kameras13
3.1.11Schrittmotoransteuerung13
3.1.12Ansteuerung diverser Sensoren13
3.2Auswahl der zu realisierenden Plattformen14
4.Auslesen einer Matrixtastatur und Ausgabe auf dem LCD15
4.1Verwendung von I/O-Ports16
4.2Ausgabe von ASCII-Zeichen auf dem LCD17
4.2.1Aufbau des Displays17
4.2.2Programmierung der Übergabefunktionen18
4.3Auslesen der Matrixtastatur20
4.3.1Grundlagen der Matrixtastatur20
4.3.2Programmierung der Auslesefunktion21
4.4Das Hauptprogramm des Versuchs22
5.Temperaturregelung mit einem Lüfter23
5.1Aufbau der Platine24
5.2Der A/D-Wandler des PIC 18F45827
5.3Programmierung des Versuchs29
6.RFID-Lesekopf Versuch31
6.1Aufbau und Ablauf des Versuchs32
6.2Die USART-Hardware33
6.3Programmierung des Controllers34
7.RFID mit Sprachmodul36
7.1Aufbau […]

Leseprobe

Inhaltsverzeichnis


Josef Fuhrer
Entwicklung von Praktikumsversuchen mit einem PIC-Controller
ISBN: 978-3-8366-3718-3
Herstellung: Diplomica® Verlag GmbH, Hamburg, 2010
Zugl. Universität Augsburg, Augsburg, Deutschland, Diplomarbeit, 2009
Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte,
insbesondere die der Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von
Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder der
Vervielfältigung auf anderen Wegen und der Speicherung in Datenverarbeitungsanlagen,
bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Eine Vervielfältigung
dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen
der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der Bundesrepublik
Deutschland in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich
vergütungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des
Urheberrechtes.
Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in
diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme,
dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei
zu betrachten wären und daher von jedermann benutzt werden dürften.
Die Informationen in diesem Werk wurden mit Sorgfalt erarbeitet. Dennoch können
Fehler nicht vollständig ausgeschlossen werden und der Verlag, die Autoren oder
Übersetzer übernehmen keine juristische Verantwortung oder irgendeine Haftung für evtl.
verbliebene fehlerhafte Angaben und deren Folgen.
© Diplomica Verlag GmbH
http://www.diplomica.de, Hamburg 2010

Josef Fuhrer
II
Kurzfassung
Die vorliegende Arbeit beinhaltet die Realisierung von Plattformen und Versu-
chen auf der Basis des PIC Universal Boards. Sie dienen als Grundlage für eine
mögliche Neugestaltung des Praktikums Mikrocomputertechnik an der Hoch-
schule Augsburg.
Der erste Teil dieser Arbeit gibt dem Leser eine Einführung in die verwendeten
Werkzeuge. Hierbei wird das PIC Universal Board vorgestellt, der verwendete
Mikrocontroller, sowie der Programmer und die Entwicklungsumgebung MPLAB
v8.10 mit C18-Compiler v3.22.
Eine Ideensammlung für mögliche realisierbare Projekte erfolgt im darauf folgen-
den Abschnitt. Aus diesen wird eine Auswahl von vier Versuchen mit unter-
schiedlichen Themenschwerpunkten entwickelt. Dies beinhaltet zusätzlich die
Entwicklung von drei Platinen, die als Peripherie auf das Entwicklungsboard
gesteckt werden können.
Aus diesen Projekten werden drei Praktikumsversuche abgeleitet, welche in der
vorgegebenen Zeit des Praktikums Mikrocomputertechnik durchführbar sind.
Dabei werden die jeweiligen Anforderungen und vermittelten Fähigkeiten an die
Studenten erläutert.
Der Anhang beinhaltet schließlich konkrete Versuchsanleitungen zu den drei
Praktikumsversuchen. Dies umfasst die Aufgabenstellungen zur Vorbereitung
und mögliche Lösungsvorschläge.

Josef Fuhrer
III
Aufgabenstellung
Teil des Studiums Elektrotechnik an der Hochschule Augsburg ist die Absolvie-
rung des Praktikums Mikrocomputertechnik. Als Praktikumsboard wird derzeit
der NF-300 Rechner zusammen mit dem Mikrocontroller 68332 verwendet. Auf
der Grundlage eines vorgegebenen PIC Universal Boards sollen nun neue Versu-
che entwickelt werden.
Als erstes muss ein geeigneter Mikrocontroller ausgewählt werden, welcher mit
dem Entwicklungsboard und dem Programmer kombinierbar ist. Weiter soll eine
Software gewählt werden, die frei verfügbar, aber dennoch professionell ist. Als
Programmiersprache ist vorzugsweise die Hochsprache C zu wählen.
Anhand der ausgewählten Entwicklungswerkzeuge sollen im Anschluss drei bis
vier Versuche entwickelt werden, auf dessen Grundlage den Studenten der Um-
gang mit Mikrocontrollern nähergebracht werden kann. Die Versuche können
entweder mit den Funktionsgruppen auf dem Entwicklungsboard realisiert wer-
den, oder durch Anfertigung zusätzlicher Peripherie. Die Ausmaße der Plattfor-
men sollen dabei nicht allzu groß sein, sodass es den Studenten möglich ist, die
Plattformen mit nach Hause zu nehmen.
Zum Schluss sollen aus den erstellten Versuchen drei Praktikumsversuche abge-
leitet werden, welche in der vorgegebenen Zeit der Praktikumstermine von den
Studenten realisierbar sind. Dazu gehören jeweils eine Versuchsanleitung für
Studenten sowie ein Lösungsvorschlag zur Realisierung.

Inhaltsverzeichnis
Josef Fuhrer
IV
Inhaltsverzeichnis
Kurzfassung ... II
Aufgabenstellung ...III
Inhaltsverzeichnis ... IV
1
Einführung ... 1
2
Vorstellung der Entwicklungswerkzeuge ... 2
2.1
PIC Universal Board ... 2
2.2
Mikrocontroller PIC 18F458 ... 3
2.3
MPLAB IDE v8.10 mit C18-Compiler v3.22 ... 5
2.4
USB PIC Programmer ... 8
3
Versuchsplattformen ... 10
3.1
Ideensammlung...10
3.1.1
Laufschrift auf den 7-Segment Anzeigen ...10
3.1.2
Auslesen einer Matrixtastatur und Ausgabe auf dem LCD ...11
3.1.3
Entfernungsmesser mit Ultraschall ...11
3.1.4
Temperaturregelung mit Lüfter ...11
3.1.5
Zählungen mit Lichtschranke ...12
3.1.6
Drehzahlsteuerung und ­messung ...12
3.1.7
Software-Radio ...12
3.1.8
RFID Experiment...13
3.1.9
Sprachausgabe/-eingabe...13
3.1.10
Geschwindigkeitsmessung mit Kameras ...13
3.1.11
Schrittmotoransteuerung ...13
3.1.12
Ansteuerung diverser Sensoren ...14
3.2
Auswahl der zu realisierenden Plattformen ...14

Inhaltsverzeichnis
Josef Fuhrer
V
4
Auslesen einer Matrixtastatur und Ausgabe auf dem LCD ... 16
4.1
Verwendung von I/O-Ports ...17
4.2
Ausgabe von ASCII-Zeichen auf dem LCD ...18
4.2.1
Aufbau des Displays ...18
4.2.2
Programmierung der Übergabefunktionen ...19
4.3
Auslesen der Matrixtastatur...21
4.3.1
Grundlagen der Matrixtastatur ...21
4.3.2
Programmierung der Auslesefunktion ...22
4.4
Das Hauptprogramm des Versuchs ...23
5
Temperaturregelung mit einem Lüfter ... 24
5.1
Aufbau der Platine...25
5.2
Der A/D-Wandler des PIC 18F458 ...28
5.3
Programmierung des Versuchs...30
6
RFID-Lesekopf Versuch ... 32
6.1
Aufbau und Ablauf des Versuchs ...33
6.2
Die USART-Hardware ...34
6.3
Programmierung des Controllers ...35
7
RFID mit Sprachmodul... 37
7.1
Aufbau und Funktion des Versuchs ...37
7.2
Timer0 des PIC 18F458 ...40
7.3
Programmierung ...41
8
Praktikumsversuche für Studenten... 44
8.1
Erster Versuch: Ansteuern von I/O-Ports...44
8.2
Zweiter Versuch: Auslesen eines Temperatursensors ...45
8.3
Dritter Versuch: Auslesen von Transponder-IDs ...46
Literaturverzeichnis... 47

Inhaltsverzeichnis
Josef Fuhrer
VI
Abbildungsverzeichnis... 48
Anhang ... 49
A.1 Erster Versuch: Ansteuern von I/O-Ports...49
A.2 Zweiter Versuch: Verarbeitung von Daten eines Temperatursensors...53
A.3 Dritter Versuch: Auslesen von Transponder-IDs ...56

1 Einführung
Josef Fuhrer
1 / 59
1
Einführung
Heutzutage befinden sich in nahezu allen elektronischen Geräten Mikrocontroller.
Diese universell einsetzbaren Ein-Chip-Systeme können je nach Anwendung indi-
viduell programmiert werden. Sie kommen zum Einsatz wenn es darum geht,
Steuerungsprobleme zu lösen und dabei den Platzbedarf so gering wie möglich zu
halten.
Sie ersetzen Schaltungen, deren Realisierung mit analogen oder diskreten Bautei-
len einen mehr oder weniger hohen Arbeits- und Zeitaufwand erfordern würde.
Da sie in Applikationen eingebettet sind, werden sie als ,,Embedded Systems"
bezeichnet.
Studierende der Fachrichtung Elektrotechnik an der Hochschule Augsburg sollen
anhand motivierender praktischer Versuche in den Umgang mit Mikrocontrollern
eingeführt werden. Deshalb ist die Absolvierung eines Mikrocontrollerpraktikums
Teil dieses Studiums. Auf Grundlage eines neuen Entwicklungsboards sollen nun
Versuche erstellt werden, die einen guten Einblick in das Arbeiten mit Embedded
Systems vermitteln.

2 Vorstellung der Entwicklungswerkzeuge
Josef Fuhrer
2 / 59
2
Vorstellung der Entwicklungswerkzeuge
In diesem Abschnitt werden die Komponenten bekannt gemacht, welche in dieser
Arbeit verwendet werden. Hierzu zählen ein Entwicklungsboard mit PIC-
Mikrocontroller, ein dazugehöriger Programmer und die Entwicklungsumgebung
MPLAB IDE v8.10 mit C18-Compiler v3.22.
2.1 PIC Universal Board
Die Basis aller Versuche bildet das PIC Universal Board, welches in Abb. 1 darge-
stellt ist. Es handelt sich dabei um ein Experimentier- und Entwicklungsboard für
Einsteiger und fortgeschrittene Anwender. Es unterstützt alle Controller der
PIC12x- bis PIC18x-Reihen im PDIP Gehäuse, mit einer Pinanzahl von 8, 18, 28
und 40.
Abb. 1: PIC Universal Board

2 Vorstellung der Entwicklungswerkzeuge
Josef Fuhrer
3 / 59
Auf dem Board sind eine Reihe von Funktionsgruppen angeordnet, die per DIP-
Schalter oder über Jumperleisten mit dem Mikrocontroller verbunden werden
können. Des Weiteren sind sämtliche Portpins mit Steckerleisten und Schraub-
klemmen verbunden. Dadurch sind externe Baugruppen problemlos an den Mi-
krocontroller anschließbar.
Zu den wichtigsten On-Board-Funktionsgruppen zählen:
·
Alphanumerisches LCD-Modul mit 4x20 Zeichen
·
12er Matrixtastatur
·
Temperaturfühler
·
RS232-Schnittstelle
·
4-stellige 7-Segmentanzeige mit Segment-Treiber
·
8 LEDs für einzelne I/O-Pins
·
Miniatur-Lautsprecher
·
Spannungsteiler für Analogeingänge
Weitere Funktionsgruppen sowie eine detaillierte Beschreibung des Boards kön-
nen im Downloadbereicht unter www.embedded-channel.de kostenlos herunter-
geladen werden. Dem Entwickler stehen somit eine ganze Reihe von Möglichkei-
ten zur Verfügung Projekte zu entwickeln und erste Simulationen mit der
Peripherie durchzuführen.
2.2 Mikrocontroller PIC 18F458
Bei einem PIC im Allgemeinen handelt es sich um einen Mikrocontroller, welcher
von der Firma Microchip Technology Inc. hergestellt wird. Sie werden eingeteilt in
verschiedene Familien.
Die kleineren PIC-Familien PIC10x, PIC12x und PIC16x werden vorzugsweise in
Assemblersprache programmiert. Ihre kleinen und zerklüftet organisierten Spei-
cher erfordern in der Regel den Einsatz von optimiertem Assemblercode. Im Nor-
malfall werden Mikrocontroller heutzutage aber in Hochsprachen programmiert.

2 Vorstellung der Entwicklungswerkzeuge
Josef Fuhrer
4 / 59
In einer Hochsprache, wie z.B. C, lassen sich Programme viel schneller und fehler-
freier erstellen. Die Hochsprachenprogrammierung bringt aber auch Nachteile mit
sich. Darunter zählen vor allem der höhere Speicherbedarf und der langsamere
Programmlauf.
Die PIC18x-Typen haben im Vergleich zu den kleineren Familien deutlich größere,
linear adressierbare Speicher und sind schneller als diese. Deshalb kompensieren
sie die typischen Nachteile und eignen sich gut für eine Programmierung in C.
Für sehr anspruchsvolle Projekte gibt es noch die Familien PIC24x, dsPICx und
PIC32x. Diese sind für komplizierte mathematische Berechnungen ausgelegt, wie
sie in der digitalen Signalverarbeitung auftreten. Darunter zählen z. B. Fourier-
Analysen oder digitale Filter [1].
In dieser Arbeit wird ausschließlich der Mikrocontroller PIC 18F458 mit einem
externen Systemtakt von 4 MHz verwendet. Dieser besitzt die Gehäuseform PDIP
1
mit einer Pinanzahl von 40. Tab. 1 gibt eine Übersicht hinsichtlich der physikali-
schen Eigenschaften sowie integrierter Hardware-Module. Zum Vergleich des
Unterschieds zwischen ähnlichen Typen sind diese ebenfalls aufgelistet.
Tab. 1: Eigenschaften des PIC 18F458 [Datenblatt PIC18F458]
Wie ersichtlich ist, ist der verwendete Mikrocontroller sehr flexibel einsetzbar und
daher für diese Arbeit bestens geeignet.

2 Vorstellung der Entwicklungswerkzeuge
Josef Fuhrer
5 / 59
Abb. 2 gibt die Belegung der einzelnen Pins wieder. Da ,,nur" 40 Pins zu Verfü-
gung stehen, sind diese fast alle für verschiedene Verwendungszwecke mehrfach
belegt. Das dazugehörige Datenblatt des Controllers gibt genaueren Aufschluss
über die Bedeutung der einzelnen Bezeichnungen.
Abb. 2: Pinbelegung PIC 18F458 [Datenblatt PIC 18F458]
2.3 MPLAB IDE v8.10 mit C18-Compiler v3.22
Microchip Technology Inc. stellt unter www.microchip.com für die Entwicklung
von eingebetteten Applikationen die Entwicklungsumgebung ,,MPLAB IDE"
kostenfrei zum Download bereit. Diese unterstützt den Entwickler mit einer Reihe
von Werkzeugen bei der Realisierung eines Projekts. Durch den integrierten As-
1
Plastic Dual Inline Package; Gehäuseform für elektronische Bauelemente

2 Vorstellung der Entwicklungswerkzeuge
Josef Fuhrer
6 / 59
sembler und Linker ist die Software dafür ausgelegt, Programme in Assembler-
sprache zu erstellen.
Da in dieser Arbeit aber die Programmiersprache C zum Einsatz kommen soll,
muss der Entwicklungsumgebung noch ein C-Compiler hinzugefügt werden. Für
Mikrocontroller der PIC18x-Familie gibt es von Microchip Technology Inc. einen
Compiler zum Download. Es handelt sich hierbei um den C18-Compiler. Dieser ist
in der Studentenversion ebenfalls kostenlos. Für die Dauer der ersten 60 Tage
unterscheidet sich die Software nicht von der Vollversion. Nach Ablauf dieser Zeit
ist als Einschränkung der erweiterte Befehlssatz nicht verfügbar. Daraus resultiert
ein längerer Assemblercode. Des Weiteren ist die vorhandene Codeoptimierung
nicht frei konfigurierbar. Sie wird nach einem Defaultschema durchgeführt, was
einen Kompromiss zwischen Codegröße und Schnelligkeit darstellt [2]. Für diesen
Verwendungszweck spielt dies aber nur eine untergeordnete Rolle und auf den
Kauf der Vollversion kann deshalb verzichtet werden.
Somit ist die integrierte Entwicklungsumgebung vollständig. Der C-Compiler
übersetzt das C-Programm zusammen mit dem integrierten Assembler in eine
Objektdatei vom Typ ,,*.o". Der Linker enthält Angaben über den physikalischen
Aufbau des Controllers und verknüpft Programmteile zu einem ausführbaren
Code. Er erstellt aus der Objektdatei eine Ladedatei vom Typ ,,*.hex". Der HEX-
Code wird letztendlich in den Controller geladen.
Für MPLAB IDE gibt es einen ausführlichen ,,MPLAB IDE User Guide". Falls bei
der Installation Probleme auftreten sollten, wird hier auf dieses Dokument im
Anhang verwiesen. Für den C18 Compiler stellt Microchip Technology Inc. das
Dokument ,,MPLAB C18 Getting Started" zur Verfügung. Zur Installation des
Compilers ist dieses heranzuziehen. Dort sind die einzelnen Installationsschritte
ausführlich beschrieben. Es soll hier nur angemerkt werden, dass es sinnvoll ist,
bei der Installation des C18-Compilers unter den Configuration Options alle Ha-
ken zu setzen, wie Abb. 3 zeigt. Dadurch werden Dateipfade des Compilers in
MPLAB IDE eingefügt und ein komfortableres Arbeiten ist somit möglich.

2 Vorstellung der Entwicklungswerkzeuge
Josef Fuhrer
7 / 59
Abb. 3: C18 Configuration Options
Nach erfolgreicher Installation muss ein neues Projekt erstellt werden. Hierfür
sind einige Schritte nötig, deren Beschreibung hier den Rahmen der Diplomarbeit
sprengen würde. Deshalb wird ebenfalls auf das Dokument ,,MPLAB C18 Getting
Started" verwiesen. Die Vorgehensweise ist dort in Kapitel 3 sehr gut dokumen-
tiert, weshalb an dieser Stelle nicht weiter darauf eingegangen wird. Zusätzlich
sind dort Anfängerprogramme in Kapitel 4 ausführlich beschrieben. Es wird
empfohlen diese abzuarbeiten, da sie einen grundlegenden Einblick in den Um-
gang mit der Software geben. Ein ausführlicher ,,C18-User Guide" befindet sich
ebenfalls im Anhang. Auf diesen kann zurückgegriffen werden, falls Interesse an
einem tieferen Einarbeiten in das Programm besteht.
Microchip Technology Inc. stellt mit dem C18-Compiler zahlreiche Bibliotheken
bereit, die dem Entwickler Programmierarbeit abnehmen. Im Anhang befindet
sich das Dokument ,,MPLAB C18-Libraries", welches eine gute Übersicht über die
mitgelieferten Bibliotheken vermittelt. Oft sind auch Anwendungsbeispiele gege-
ben, was eine schnelle Einarbeitung in den Umgang mit diesen ermöglicht.

2 Vorstellung der Entwicklungswerkzeuge
Josef Fuhrer
8 / 59
2.4 USB PIC Programmer
Zum Beschreiben des Controllers mit einem HEX-Code wird der ,,Universal USB
PIC Programmer" verwendet (Abb. 4). Dieser ist neben eines Nullkraftsockels mit
einer ICSP
2
-Schnittstelle ausgestattet. Zur Programmierung wird normalerweise
der Controller in den Nullkraftsockel eingesetzt. Dies hat den Nachteil dass der
Controller bei jeder Programmierung aus dem Zielsystem genommen werden
muss. Hierbei ist äußerste Sorgfalt angebracht, da die Pins sehr empfindlich sind
und leicht abbrechen.
Abb. 4: USB PIC Programmer
Da aber das Entwicklungsboard ebenfalls mit einer ICSP-Schnittstelle ausgestattet
ist, kann durch Verbinden dieser Schnittstellen eine Onboard-Programmierung
durchgeführt werden. Somit braucht der Controller nicht mehr aus dem Ziel-
system genommen werden. Hierbei ist aber zu beachten, dass am Mikrocontroller
ein Dauerreset ansteht, sobald diese Schnittstellen verbunden sind. Deshalb muss
nach erfolgreicher Programmierung diese Verbindung wieder getrennt werden.
Zum Programmer wurde die Software ,,MicroPro" mitgeliefert. Mithilfe dieser
wird die Ladedatei vom Typ *.hex in den Controller geladen. Zuvor müssen aber
unbedingt die Configuration-Bits angepasst werden. Mit ihnen wird die allgemei-
2
In-Circuit Serial Programming

2 Vorstellung der Entwicklungswerkzeuge
Josef Fuhrer
9 / 59
ne Konfiguration des Mikrocontrollers bestimmt. Dies geschieht durch Klicken
des in Abb. 5 dargestellten Buttons ,,Fuses".
Abb. 5: USB PIC Programmer Software
Es öffnet sich daraufhin ein weiteres Fenster. Hier muss der Watchdog Timer und
Low Voltage Programm deaktiviert, sowie der Oszillator auf XT gestellt werden.
Abb. 6 zeigt das geänderte Fenster. Bei Nichtänderung beginnt der Controller
nach der Programmierung nicht mit der Arbeit.
Abb. 6: USB PIC Programmer Fuse Edit

2 Vorstellung der Entwicklungswerkzeuge
Josef Fuhrer
10 / 59
Somit sind die Entwicklungswerkzeuge vollständig und es können eigene Projekte
entwickelt werden.
3
Versuchsplattformen
Bei den Versuchsaufbauten soll es den Studenten möglich sein, diese mit nach
Hause zu nehmen. Dadurch sind auch die Ausmaße der Aufbauten beschränkt.
Am sinnvollsten sind hierbei Platinen, die auf das Entwicklungsboard gesteckt
werden können.
3.1 Ideensammlung
In diesem Abschnitt werden mögliche Versuche aufgelistet, die mithilfe des Ent-
wicklungsboards realisierbar sind. Es werden die Schwerpunkte jedes Experimen-
tes geschildert und die dazu benötigten Komponenten abgeschätzt.
3.1.1 Laufschrift auf den 7-Segment Anzeigen
Auf dem Entwicklungsboard befinden sich vier 7-Segment-Anzeigen, die an einen
LED-Treiberbaustein mit I
2
C-Interface angeschlossen sind. Mithilfe dieser Anzei-
gen könnte eine Laufschrift erzeugt werden, deren Laufrichtung und Geschwin-
digkeit variabel ist. Der Fokus liegt dabei im Umgang mit dem im Controller in-
tegrierten MSSP
3
-Modul.
3
Master Synchroner Serieller Port

3 Versuchsplattformen
Josef Fuhrer
11 / 59
3.1.2 Auslesen einer Matrixtastatur und Ausgabe auf dem LCD
Ebenfalls befinden sich auf dem Entwicklungsboard eine 3x4 Matrixtastatur und
ein LCD
4
für 4x20 Zeichen. Der Versuch beinhaltet das Auslesen der Matrixtasta-
tur und die Ausgabe der gedrückten Taste auf dem LCD. Um beide Peripherie-
module ansteuern zu können, muss der Umgang mit der parallelen Schnittstelle
des Controllers erlernt werden.
3.1.3 Entfernungsmesser mit Ultraschall
Im Internet sind viele Module erhältlich mit welchen sich Entfernungen per Ultra-
schall messen lassen. Sie besitzen zur Ansteuerung unterschiedliche serielle
Schnittstellen. Dieser Versuch eignet sich gut, um den Umgang mit den seriellen
Hardware-Modulen des Controllers zu erlernen. Für die Realisierung muss hier-
für eine externe Baugruppe erstellt werden. Der Aufbau könnte die Form eines
Stiftes aufweisen. Es wird auf das Objekt gezielt, dessen Abstand gemessen wer-
den soll. Die Entfernung wird dann auf dem LCD des Entwicklungsboards ausge-
geben.
3.1.4 Temperaturregelung mit Lüfter
Auf einer Platine befindet sich ein Heizwiderstand, dessen Temperatur mit einem
Sensor gemessen wird. Zusätzlich ist ein Lüfter verbaut, welcher den Heizwider-
stand kühlt. Der Widerstand kann dadurch mithilfe einer automatischen Regelung
auf einer gewünschten Solltemperatur gehalten werden. Die Eingabe des Sollwer-
tes erfolgt über die Matrixtastatur, die Ausgabe des Soll- und Istwertes auf dem
LCD. Der Temperaturwert wird durch das Ergebnis des A/D-Wandlers bestimmt,
welcher als integriertes Hardware-Modul Teil des Mikrocontrollers ist. Eine 2-
Punkt-Regelung sollte anfangs für diesen Versuch genügen.
4
Liquid Crystal Display

3 Versuchsplattformen
Josef Fuhrer
12 / 59
3.1.5 Zählungen mit Lichtschranke
Mit dem Mikrocontroller wird eine Lichtschranke angesteuert. Diese könnte bei-
spielsweise an der Seite eines Rohres angebracht sein, durch das Kugeln fallen. Bei
jeder Unterbrechung wird ein Zähler inkrementiert, wodurch sich am Ende die
Gesamtanzahl bestimmen lässt. Die Ansteuerung der Lichtschranke erfolgt hierbei
entweder durch Verwendung von I/O-Ports oder per serielle Schnittstelle.
3.1.6 Drehzahlsteuerung und ­messung
Als Erweiterung für den Temperaturregelungsversuch kann die Drehzahl des
Lüfters gesteuert werden. Es könnte aber auch einen eigenständigen Versuch
darstellen. Zur Drehzahlsteuerung muss ein puls-weiten-moduliertes Signal vom
Mikrocontroller erzeugt werden. Dazu muss das CCP
5
-Modul verwendet werden.
Wird dieser Versuch als Erweiterung zur Temperaturregelung realisiert, ließen
sich Funktionen für unterschiedliche Regelungen implementieren und somit das
Regelverhalten untersuchen. Weiter könnte die aktuelle Drehzahl des Lüfters
bestimmt werden. Eine Idee zur Realisierung ist beispielsweise das Auslösen eines
Interrupts bei jedem Drehzahlimpuls und Inkrementierung eines Zählers. Aus
dem Zählerstand lässt sich dann die Geschwindigkeit berechnen.
3.1.7 Software-Radio
Mit dem Mikrocontroller werden Hardwareteile eines Hochfrequenzempfängers
durch Software ersetzt. Zusätzlich muss hierfür eine Platine erstellt werden, auf
welcher die Empfangsantenne und Lautsprecher mit Verstärker untergebracht
sind. Weiter muss erarbeitet werden, welche Teile des Hochfrequenzempfängers
als Hardware-Modul auf der Platine untergebracht und welche per Software reali-
siert werden können.
5
Capture/Compare/PWM

3 Versuchsplattformen
Josef Fuhrer
13 / 59
3.1.8 RFID Experiment
Ein RFID-Modul liest die Codes verschiedener Transponder aus und sendet diese
über eine serielle Schnittstelle an den Mikrocontroller. Auf dem LCD wird danach
der aktuelle Transpondercode dargestellt. Somit liegt der Schwerpunkt hier eben-
falls im Umgang mit einer seriellen Schnittstelle.
3.1.9 Sprachausgabe/-eingabe
Mit einem Sprachmodul könnte per Sprachsteuerung die Richtung eines Roboter-
arms mit beispielsweise einer integrierten Kamera gelenkt werden. Weiter wäre es
möglich, durch die Sprachausgabe diverse akustische Feedbacks zu erhalten. Mit
der Sprachausgabe könnte darüber hinaus das RFID-Experiment mit einem sol-
chen Modul erweitert werden. Bei Erkennung eines Transponders könnte die
jeweilige Person namentlich begrüßt werden.
3.1.10 Geschwindigkeitsmessung mit Kameras
Auf einer Modellschiene befindet sich ein Rollwagen, an dessen Unterseite zwei
Kameras in einem bestimmten Abstand angebracht sind. Durch Erkennung der
Querbalken der Gleise lässt sich daraus die Geschwindigkeit des Wagens bestim-
men. Hierfür muss der Datenstrom der Kameras mit dem Mikrocontroller verar-
beitet werden. Die aktuelle Geschwindigkeit ließe sich auf dem LCD oder auf den
7-Segment-Anzeigen darstellen.
3.1.11 Schrittmotoransteuerung
Auf einer Platine ist ein kleiner Schrittmotor platziert, welcher mit dem Mikro-
controller angesteuert wird. Dabei muss zur Positionsbestimmung ein Geber aus-
gelesen und die neue Sollposition durch Einbezug der Istwerte berechnet werden.

3 Versuchsplattformen
Josef Fuhrer
14 / 59
3.1.12 Ansteuerung diverser Sensoren
Für Anschauungszwecke sind unterschiedlichste Sensoren für Temperatur, Licht,
Ultraschall, Druck usw. auf einer Platine angeordnet. Per Software kann ein be-
stimmter Sensor ausgewählt, sein Messsignal mit dem Controller verarbeitet und
auf dem LCD dargestellt werden.
3.2 Auswahl der zu realisierenden Plattformen
Aus den in unter Abschnitt 3.1 aufgeführten möglichen Versuchen sollen nun vier
Stück ausgewählt und realisiert werden. Um das Praktikum sinnvoll und ab-
wechslungsreich zu gestalten, sollten die Versuche unterschiedliche Themen-
schwerpunkte haben. Dadurch ist ein umfassender Einblick in die Möglichkeiten
beim Arbeiten mit dem PIC-Controller gegeben.
Der Versuch ,,Auslesen einer Matrixtastatur und Ausgabe auf dem LCD" ist ein
gut verwendbarer Anfangsversuch, da dort der Umgang mit digitalen I/O-Pins
ausführlich abgehandelt wird. Des Weiteren wird hierbei möglicherweise das
Interesse mancher Studenten geweckt, sich auch im privaten Bereich mit Mikro-
controller zu beschäftigen. Vor allem bei Ausgaben auf einem LCD sind unzählige
Anwendungsmöglichkeiten für eigene Projekte denkbar.
Als Aufbauversuch wird die Temperaturregelung mit Lüfter gewählt. Hierbei
liegt der Fokus im Umgang mit dem im Controller integrierten A/D-Wandler.
Meist besitzen heutzutage sogar die kleinsten Vertreter der Mikrocontroller we-
nigstens einen A/D-Wandler. Viele Sensoren unterschiedlichster Einsatzbereiche
stellen am Ausgang ein analoges Messsignal bereit. Dieses kann somit ohne ein
zusätzliches externes Bauteil weiterverarbeitet werden. Deshalb ist es sinnvoll dies
in einem Versuch abzuhandeln.
Da die meisten Peripheriegeräte heutzutage untereinander über serielle Schnitt-
stellen kommunizieren, sollte mit einer solchen in einem Praktikumsversuch gear-
beitet werden. Deshalb wird der RFID-Versuch realisiert.

Details

Seiten
Erscheinungsform
Originalausgabe
Jahr
2009
ISBN (eBook)
9783836637183
DOI
10.3239/9783836637183
Dateigröße
2.3 MB
Sprache
Deutsch
Institution / Hochschule
Universität Augsburg – Mathematisch-Naturwissenschaftliche Fakultät
Erscheinungsdatum
2009 (Oktober)
Note
1,7
Schlagworte
mikrocontroller mplab programmierung versuchsaufbau
Zurück

Titel: Entwicklung von Praktikumsversuchen mit einem PIC-Controller
Cookie-Einstellungen