Sie sind hier
E-Book

Handbuch PIC24/dsPIC-Mikrocontroller

Praxisbeispiele zur Anwendung der Module und Befehle

AutorAnne König, Manfred König
VerlagFranzis
Erscheinungsjahr2014
Seitenanzahl260 Seiten
ISBN9783645252737
FormatPDF/ePUB
KopierschutzWasserzeichen/DRM
GerätePC/MAC/eReader/Tablet
Preis19,99 EUR
16-Bit-PICs sind die perfekte Lösung, wenn Sie einfache Handhabung und eine große Anwendungsbreite bei Controllern suchen. Die Klasse der 16-Bit-PICs besitzt eine große Fülle von Typen, welche sich in ihrer Ausstattung und auch in einigen Punkten der Funktionalität unterscheiden. Der Schwerpunkt des Buches besteht darin, die gemeinsamen Eigenschaften verständlich zu machen. Alle Typen der 16-Bit-Klasse besitzen im Wesentlichen die gleiche Architektur, die gleiche Organisation der Speicher und vor allem die gleiche Sprache bis auf die DSP-Befehle, welche nur den dsPIC-Typen vorbehalten sind. Die dsPIC-Typen unterscheiden sich in ihren grundlegenden Eigenschaften nicht von den übrigen 16-Bit-Typen. Sie sind in ihrer Ausstattung auf schnelles Messen und auf schnelle Verarbeitung der Messergebnisse eingerichtet. Die DSP-Einheit ist nahtlos in die übrige Struktur eingebettet. Bei den Peripheriemodulen, die zunehmend an Bedeutung gewinnen, gibt es Varianten, auf die besonders hingewiesen wird. Das Grundprinzip beim Umgang mit den Peripheriemodulen ist aber immer ähnlich. Für die Beispiele werden vier typische Vertreter der verschiedenen Varianten verwendet: PIC24FJ128GA010 PIC24FJ256GB110 PIC24EP512GU810 dsPIC33FJ256GP710 Der praktische Umgang mit den Peripheriemodulen steht im Vordergrund der Beispiele. Hierbei sind oft feine Details zu beachten. Insbesondere die Verwendung der zugehörigen Interrupts erfordert einige Sorgfalt. Dieses Buch ist zur Anwendung der 16-Bit-PICs und dsPICs geschrieben. Es setzt aber grundlegende Kenntnisse über die Funktion von Mikrocontrollern voraus.

Kaufen Sie hier:

Horizontale Tabs

Leseprobe

1Die 16-Bit-PIC-Klasse

Die Bezeichnung »16-Bit-PIC« bezieht sich auf die Breite des Datenbusses. Diese Datenbreite ist in vielen Anwendungen sehr praktisch. Der hauptsächliche Gewinn an Komfort gegenüber den 8-Bit-PICs ist aber dem 24 Bit breiten Befehlsformat zu verdanken. Dadurch sind größere Adressräume möglich – sowohl bei den Daten als auch bei den Befehlen. Außerdem erlauben die breiteren Programmworte effizientere Adressierungsarten.

Die Klasse besteht aus den Familien

PIC24FJ

PIC24HJ

PIC24EP

und den dsPICs, die zusätzlich die DSP-Einheit besitzen:

dsPIC30FJ

dsPIC33FJ

dsPIC33EP

Mit den DSP-Befehlen können lineare mathematische Algorithmen, z.B. für Filter, Regelprozesse oder Fourier-Funktionen, effektiv unterstützt werden.

Die Familien unterscheiden sich physikalisch und in schaltungstechnischen Einzelheiten. In jeder Familie gibt es eine große Anzahl von Derivaten, die sich in Größe und Ausstattung beträchtlich unterscheiden.

Alle Derivate der 16-Bit-PIC-Klasse haben aber die gleiche Architektur. Die CPU arbeitet auf die gleiche Weise. Die Befehle sind die gleichen, bis auf die dsPIC-Befehle, die zusätzlich zu den gemeinsamen Befehlen implementiert sind. Weitgehend gleich ist auch das interne Management, z.B. die Organisation der Interrupts oder die Zusammenarbeit der CPU mit den Peripheriemodulen.

In diesem Buch werden vorwiegend die gemeinsamen Eigenschaften beschrieben. Wichtig ist aber auch, die relevanten Unterschiede zu kennen. Man muss unbedingt wissen, welche Details man im jeweiligen Datenbuch nachlesen muss und worauf man sich höchstwahrscheinlich bei allen Derivaten verlassen kann. Man weiß natürlich nie, was den Entwicklern der 16-Bit-Klasse in der Zukunft einfällt.

Die Unterschiede in den Derivaten betreffen hauptsächlich folgende Eigenschaften:

Die Ausrüstung mit Peripheriemodulen, die in den Datenblättern als Peripherals bezeichnet werden. Dabei geht es nicht nur um die Frage, ob bestimmte Peripheriemodule vorhanden sind und ggf. in welcher Anzahl. Die Module unterscheiden sich auch oft in ihrer Komplexität und Leistungsfähigkeit.

Die Ausstattung mit Programm- und Datenspeicher. Große Datenspeicher erfordern oft ein komplexeres Management des Adressraums.

Die PPS(Peripheral Pin Select)-Eigenschaft. D.h., dass die Pins, die den Peripheriemodulen zugeordnet sind, in weiten Grenzen per Software selektiert werden können. Diese Eigenschaft ist oft ausschlaggebend für die Auswahl eines PIC-Derivats. Sie erleichtert nicht nur das Layout, sondern ermöglicht auch Schaltungstricks, die ohne PPS nicht möglich sind.

Die komfortable DSP-Einheit, die dsPICs zusätzlich besitzen. Man kann sie aber ansonsten in schlichten Ausführungen erhalten.

Ein Schwerpunkt wird in diesem Buch auf die Eigenschaften und die Bedienung der Peripheriemodule gelegt. Es gibt viele Anwendungen, bei denen die Hauptarbeit in ihren Händen liegt und die CPU vorwiegend mit dem Management der Module beschäftigt ist. Die Peripheriemodule können im Wesentlichen mit dem Sprachumfang von C bedient werden.

Über die Beschreibung der inneren Organisation, z.B. die Adressierung der Speicher sowie den Aufbau der Assembler-Befehle, wird ebenfalls ausführlich berichtet.

Vier unterschiedliche Beispiel-PICs

Wir haben unsere Beispiele jeweils an einem von vier typischen, aber deutlich unterschiedlichen Derivaten ausgearbeitet:

PIC24FJ128GA010

PIC24FJ256GB110

PIC24EP512GU810

dsPIC33FJ256GP710

Ausstattung der vier Beispiel-PICs

Falls dem Explorerboard 16 der dsPIC…710A beigelegt ist, ist das kein Problem. Sie sind fast identisch, auf jeden Fall abwärtskompatibel. D.h., dass in den existierenden Projekten nur der richtige dsPIC angemeldet und der Name des entsprechenden Include-Files um das »A« erweitert werden muss.

Microchip Explorerboard16

Um eine schnelle Möglichkeit zum Nachvollziehen unserer Beispiele zu schaffen, haben wir alle mit dem Explorerboard16 durchgeführt. Selbst eine entsprechende Platine aufzubauen kostet mehr Geld und vor allem Zeit.

Bild 1.1: Explorerboard16

Einige Eigenschaften des Explorerboards

Stiftleisten für die Aufnahme von PIMs (Plug-in-Module); damit können unterschiedlichste Controller schnell aufgesteckt werden. Zwei PIMs, PIC24FJ128GA010 und dsPIC33FJ256GP710, sind bereits inklusive.

Stromversorgungsbuchse für 9–15 V ungeregelt zur verpolungssicheren Versorgung aller Komponenten

RS232-Port inklusive V24-Treiber zum direkten Anschluss an den PC oder über einen V.24/USB-Wandler, um PIC-Ausgaben direkt in einem Terminalprogramm sehen zu können; Eingaben an den PIC sind natürlich auch möglich.

Temperatursensor vom Typ TC1074 mit analogem Ausgang direkt mit Pin RB4 (AN4) verbunden

USB-Anschluss

ICD-Steckverbinder zum Programmieren und Debuggen; mögliche Debugger sind ICD3, PICKit3 oder auch Real-ICE

Zweizeiliges LCD inklusive Controller zur Textausgabe

Anschlussmöglichkeit für ein Grafik-LCD

4 Kurzhubtaster für den Benutzer auf den Pins RD6, RD13, RA7 und RD7

1 analoges Poti am Pin RB5 (AN5)

8 LEDs an den Pins RA0 bis RA7

2 Oszillatormöglichkeiten: ein 8-MHz-Quarz als XT-Osc und ein 32.768-kHz-Uhrenquarz für das PIC-interne RTCC-Modul

1 serielles EEPROM vom Typ 25LC256 mit 256 kBit Speicher; eine gute SPI-Bus-Demonstration.

Passende Steckverbindung für den Programmer/Debugger PICkit3

3 Erweiterungsteckverbinder für EdgeCardModular und PICtail/Plus zur Erledigung fast aller Eventualitäten. Möglichkeit, eine Vielzahl von angebotenen Erweiterungsmodulen anzuschließen

Beispielprojekte

Zu jedem ausgearbeiteten Beispiel gibt es ein eigenständiges Projekt. Wir erstellen immer zu jedem Projekt zwei Dateien, die die Eigenschaften aller Portpins festlegen. Diese Dateien sind zum Teil von dokumentarischer Bedeutung.

PPPiop.h-Datei

In der ersten Datei mit dem Namen PPPiop.h (PPP ist der Projektname) stehen alle Deklarationen und Definitionen, die für die Festlegung der (anfänglichen) Eigenschaften aller Pins benötigt werden. Dazu gehört die Festlegung, ob die Pins Ein- oder Ausgänge sind, ob sie analog oder digital sind und ggf. Open-drain-Eigenschaften haben. Die tatsächlich verwendeten Pins erhalten immer einen Namen. Bei PICs mit PPS (Port Pin Select) gibt es auch noch Deklarationen, die für die Zuordnung zur Funktionalität notwendig sind. Diese Deklarationen werden für jeden Port durchgeführt. Auch nicht verwendete Pins werden dabei berücksichtigt.

Auch die zugehörigen Prototypen der Funktionen, die die deklarierten Werte nach dem RESET in die zuständigen Register schreiben, befinden sich in der PPiop.h-Datei.

PPPiop.c-Datei

Die PPPiop.c-Datei enthält alle Funktionen, mit denen die Anfangszustände der Portpins nach dem RESET in die zuständigen Register geladen werden. Bei PICs mit PPS-Fähigkeit enthält sie auch die Funktionen, die den Pins, die wählbaren Peripheriemodulen zugeordnet werden können, die richtige Funktion zuordnet.

Liste der Beispiele auf der beigefügten CD-ROM

Entwicklungsumgebung

Die Beispielprojekte in diesem Buch wurden unter Windows XP mit MPLAB 8.88 erstellt. Der verwendete C-Compiler ist der C30/XC16 V3.31 von Microchip. Die Projekte sind auch im MPLABX mit dem XC16 V1.21 getestet worden. Die Compiler C30/XC16 verwenden die gleiche Form des Quellcodes und ergeben den gleichen Assemblercode.

Nach dem Importieren ins MPLABX muss im Projekt der verwendete Compiler ausgewählt werden. Der C30/XC16 ist übrigens im MPLABX problemlos verwendbar. Einziger Nachteil: Er wird nicht mehr weiterentwickelt.

Als Programmer bzw. Debugger haben wir den RealICE verwendet. Die billigere Variante, der PICKit3, kann genauso gut eingesetzt werden, sowohl als Programmer als auch als Debugger.

Architektur

Bild 1.2: Blockdiagramm des PIC24FJ128GA010

Wer mit 8-Bit-PICs vertraut ist, wird erkennen, dass die typische PIC-Philosophie erhalten wurde:

Die Busse zu den Daten-und Programmspeichern sind voneinander getrennt.

Die Befehle sind (mit einigen Ausnahmen) komplett in einem Programmwort enthalten, d.h. sowohl die Befehlscodes als auch die Argumente.

Die Befehle werden (mit einigen Ausnahmen) in einem einzigen Befehlszyklus abgearbeitet.

Eine Fülle von Peripheriemodulen führen ohne Beteiligung der CPU eine Menge nützlicher Funktionen aus.

Neben den normalen Datenregistern gibt es einen...

Blick ins Buch

Weitere E-Books zum Thema: Programmiersprachen - Softwareentwicklung

ASP.NET Shortcut

E-Book ASP.NET Shortcut
Format: PDF

Shortcut-Tipps für ASP.NET-Profis Die neue .NET-Version der Active Server Pages stellt eine Umgebung zur Entwicklung von Web-Applikationen im .NET-Framework bereit. Viele aus der Desktop-…

ASP.NET Shortcut

E-Book ASP.NET Shortcut
Format: PDF

Shortcut-Tipps für ASP.NET-Profis Die neue .NET-Version der Active Server Pages stellt eine Umgebung zur Entwicklung von Web-Applikationen im .NET-Framework bereit. Viele aus der Desktop-…

ASP.NET Shortcut

E-Book ASP.NET Shortcut
Format: PDF

Shortcut-Tipps für ASP.NET-Profis Die neue .NET-Version der Active Server Pages stellt eine Umgebung zur Entwicklung von Web-Applikationen im .NET-Framework bereit. Viele aus der Desktop-…

Programmieren lernen in PHP 5

E-Book Programmieren lernen in PHP 5
Format: PDF

Mit der Version 5 erreicht PHP einen bemerkenswerten Reifegrad, der PHP zu einer festen Größe in der Welt der Webprogrammierung macht. Gerade die leichte Erlernbarkeit macht PHP zur idealen…

Mathematik für Informatiker

E-Book Mathematik für Informatiker
Format: PDF

Die Informatik entwickelt sich in einer unglaublichen Geschwindigkeit. Häufig ist die Mathematik Grundlage von Neuerungen. Deshalb ist sie unverzichtbares Werkzeug jedes Informatikers und Pflichtfach…

Mathematik für Informatiker

E-Book Mathematik für Informatiker
Format: PDF

Die Informatik entwickelt sich in einer unglaublichen Geschwindigkeit. Häufig ist die Mathematik Grundlage von Neuerungen. Deshalb ist sie unverzichtbares Werkzeug jedes Informatikers und Pflichtfach…

Mathematik für Informatiker

E-Book Mathematik für Informatiker
Format: PDF

Die Informatik entwickelt sich in einer unglaublichen Geschwindigkeit. Häufig ist die Mathematik Grundlage von Neuerungen. Deshalb ist sie unverzichtbares Werkzeug jedes Informatikers und Pflichtfach…

Weitere Zeitschriften

Archiv und Wirtschaft

Archiv und Wirtschaft

"Archiv und Wirtschaft" ist die viermal jährlich erscheinende Verbandszeitschrift der Vereinigung der Wirtschaftsarchivarinnen und Wirtschaftsarchivare e. V. (VdW), in der seit 1967 rund 2.500 ...

AUTOCAD Magazin

AUTOCAD Magazin

Die herstellerunabhängige Fachzeitschrift wendet sich an alle Anwender und Entscheider, die mit Softwarelösungen von Autodesk arbeiten. Das Magazin gibt praktische ...

BMW Magazin

BMW Magazin

Unter dem Motto „DRIVEN" steht das BMW Magazin für Antrieb, Leidenschaft und Energie − und die Haltung, im Leben niemals stehen zu bleiben.Das Kundenmagazin der BMW AG inszeniert die neuesten ...

care konkret

care konkret

care konkret ist die Wochenzeitung für Entscheider in der Pflege. Ambulant wie stationär. Sie fasst topaktuelle Informationen und Hintergründe aus der Pflegebranche kompakt und kompetent für Sie ...

Courier

Courier

The Bayer CropScience Magazine for Modern AgriculturePflanzenschutzmagazin für den Landwirt, landwirtschaftlichen Berater, Händler und generell am Thema Interessierten, mit umfassender ...

Euphorion

Euphorion

EUPHORION wurde 1894 gegründet und widmet sich als „Zeitschrift für Literaturgeschichte“ dem gesamten Fachgebiet der deutschen Philologie. Mindestens ein Heft pro Jahrgang ist für die ...

Evangelische Theologie

Evangelische Theologie

Über »Evangelische Theologie« In interdisziplinären Themenheften gibt die Evangelische Theologie entscheidende Impulse, die komplexe Einheit der Theologie wahrzunehmen. Neben den Themenheften ...