
Ende der achtziger Jahre wurde der PIC- Controller von der Firma Microchip auf den Markt gebracht. Diese unterscheiden sich von den "Standard-Controllern" von Intel im Wesentlichen dadurch, dass das auszuführende Programm im Chip selbst untergebracht werden muss. Das hat den Vorteil, dass Pins und Kosten für den externen Speicher entfallen, der Chip jedoch mit einem speziellen Gerät programmiert werden muss.
Die ersten Typen kamen aus der 16C5X - Reihe (Base Line), die zwischenzeitlich entwickelten "Brüder" PIC16C6X, -7X und -8X sind wesentlich komfortabler und werden als Mid-Range bezeichnet. Zusätzlich zu den PIC16 - Klassen gibt es noch die High-End-Klasse mit den PIC17C4X - µControllern, welche in den letzten Jahren an Bedeutung gewonnen haben.
Eine Übersicht mit den Leistungsmerkmalen der einzelnen Mitglieder der Familie finden Sie hier (die neusten Typen fehlen).
|
PIC16F8X | |
|
PIC16F87X |
PIC16F84Die Vorteile der PIC16 Controller-Familie liegen in der einfachen Architektur, dem kleinen, aber gut durchdachten Befehlssatz, der hohen Geschwindigkeit, der sehr kostengünstigen OTP (One Time Programmable) Bausteine und der preiswerten Entwicklungswerkzeuge. Während die Datenbreite 8 Bit beträgt, bestehen die Programmworte aus 12 bzw. 14 Bit. Damit passen alle Befehle zusammen mit ihren Argumenten in ein Wort. Der PIC16F84 enthält:
13 I/Os
einen integrierten Watchdog-Timer (führt periodischen Sytemreset aus)
einen integrierten 8-Bit Timer \Zähler mit einstellbarem Teiler
einen 8-Level Stack (Stapelspeicher)
einen RAM mit 68 Byte freier Kapazität
ein Daten-EEPROM mit 64 Bytes Speicher
Möglichkeiten zum Power on Reset (POR) und Stromsparmode (Sleep)
einen 14-Bit Befehlskern
integriertes EEprom mit 1024 Worten Kapazität
Datenerhalt bis 40 Jahre, auch ohne Pufferung
Niedrige Stromaufnahme - da CMOS-Technologie
1000 - 1'000'000-fache Beschreibmöglichkeit (hierzu findet man in der Literatur leider verschiedene Aussagen)
Betriebspannungen von 2-6V sind möglich
Als Entwicklungsumgebung wird die kostenlose Entwicklungsumgebung MPLAB von Microchip verwendet. Mit ihr kann man Programme im Assemblercode entwickeln. Der Befehlssatz des PIC umfasst 40 Befehle. Das Resultat ist dann ein HEX-File, das den fertigen Code enthält. Mit dem Programmer 'PICStart Plus' kann der PIC direkt aus der Entwicklungsumgebung heraus programmiert werden.
Laden Sie sich die neuste Version von MPLAB hier herunter.
Entpacken Sie die heruntergeladene Datei und führen Sie die ausführbare EXE-Datei aus.
Folgen Sie den Installationsanweisungen des Installers.
Ein Projekt mit MPLAB erstellen
MPLAB beinhaltet einen Texteditor einen Assembler und Grundeinstellungen für jeden Prozessortyp (include-Dateien). Nach dem Start von MPLAB legt man über "Project" - "New ..." zunächst ein neues Projekt an. Danach erstellt man mit "File" - "New" und "File" - "Save as" eine Assemblerdatei mit der Dateierweiterung ".ASM". Mit dem Menüpunkt "Project" - "Add Files to Project" kann man dem Projekt nun die Assemblerdatei zuordnen. Der Menüpunkt "Projekt" - "Make" startet den Assembler und wenn im Programm keine Syntaxfehler enthalten sind, schreibt MPLAB eine ".HEX"-Datei in der das fertige Programm enthalten ist.
Brenner korrekt anschliessen, Speisung, COM1 oder COM2
Mit dem Menüpunkt "Programmer" - "Settings..." - "Communications" COM1 oder COM2 auswählen
Mit dem Menüpunkt "Programmer" - "Select Programmer" PICSTART Plus auswählen
Mit dem Menüpunkt "Programmer" - "Enable Programmer" den PICSTART Plus anwählen
Optionen richtig setzen
Vor dem Brennen müssen wir einige Optionen richtig setzen. Diese Optionen sind im Configuration Word (siehe Datenblatt PIC16F84, p38-39) gespeichert und können nur während der Programmierung gewählt werden. Das Configuration Word ist nicht im Benutzerspeicherbereich enthalten. Wir wählen für unsere Übungen, wenn nichts anderes vorgegeben ist, die folgenden Optionen unter dem Menüpunkt "Configure" - "Coonfiguration Bits..."
Watchdog Timer off
Power-up Timer off
Code Protection off
Mit dem Menüpunkt "Programmer" - "Program" den PIC programmieren
Installation des PICCLite ANSI-C Compiler
Laden Sie unter http://www.htsoft.com/ den PICCLite Compiler herunter oder installieren Sie die lokale Kopie (Version 8.05).
Doppelklick auf die heruntergeladene Exe-Datei und einfach den Installationsanweisungen folgen
Neustarten des Systems
Ein Projekt mit MPLAB erstellen
Nach dem Start von MPLAB legt man über "Project" - "New ..." zunächst ein neues Projekt an. Danach erstellt man mit "File" - "New" und "File" - "Save as" eine C-Quellcode -Datei mit der Dateierweiterung ".c".
Mit dem Menüpunkt "Projekt"-"Select Language Toolsuite" den High Tech PICC Toolsuite auswählen
Mit dem Menüpunkt "Project" - "Add Files to Project" kann man dem Projekt nun die C-Quellcode -Datei zuordnen.
Mit dem Menüpunkt " Configure" - "Select Device..." den gewünschten PIC-Typ auswählen (Hier im NTB: 16F84A)
Der Menüpunkt "Projekt" - "Make" startet den PICCLite Compiler und wenn im Programm keine Syntaxfehler enthalten sind, schreibt MPLAB eine HEX-Datei in der das fertige Programm enthalten ist.
Die Flashprogrammierung wird im Abschnitt „Assembler-Programmierung des PIC“ beschrieben.
Das Benutzerhandbuch für den PICCLite ANSI C Compiler finden Sie hier.
Beachte: Falls Sie Probleme beim kompilieren haben, schauen Sie nach, ob Sie Ihre Umgebungsvariabel HTL_PIC auf C:\PICCLITE gesetzt haben. Öffnen Sie dazu ein cmd-Fenster und geben Sie set HTL_PIC=C:\PICCLITE ein. Als Alternative können Sie auch diese Umgebungsvariabel ganz entfernen.