../../icons/Logo.pngPraktische Elektronik

Programmierung des PIC

Attention sticker Die Programmierung des PIC erfordert spezielle Hardware und Software.

Soweit es meine Zeit zulässt, bin ich bereit hierbei zu helfen.

Bitte per E-Mail melden.

Hier wird beschrieben wie der PIC 12F529 unter der MPLAB X IDE von Microchip programmiert wird.

  • Mit der MPLAB X IDE (Integrated Development Environment) kann der PIC 12F529 aus dem Assembler-Quellcode programmiert werden.
  • Mit der MPLAB X IPE (Integrated Programming Environment) kann der PIC 12F529 aus dem HEX-Code programmiert werden.
  • Als Programmier-Tool wird das PICkit3 von Microchip verwendet.

Die MPLAB-Software kann http://www.microchip.com/mplab/mplab-x-ide kostenlos bezogen werden.

Das PIKcit 3 kann bei Microchip oder im einschlägigen Handel bezogen werden.

Die folgende Beschreibung basiert auf der

  • MPLAB X IDE v2.20 für Linux mit angeschlossenem PIKcit 3, der
  • MPLAB X IDE v3.51 unter Windows7 und der
  • MPLAB X IPE v2.20 für Linux mit angeschlossenem PIKcit 3

Die Umgebungen arbeiten nur dann, wenn

  • die korrekte PIC-Familie: Mid-Range 8-bit MCUs (PIC10/12/16/MCP)
  • der korrekte PIC: PIC12F629
  • für das Programmieren die 5V-Versorgungsspannung vom PIKcit3 kommend eingestellt ist.
  • Auf eine externe Versorgung wird hier nicht eingegangen.
Attention > Es gibt eine Reihe alternativer Tools, auf die hier nicht eingegangen wird.

Projekt aufsetzen

Hier wird beschrieben, wie der Assember-Code unter der MPLAB X IDE übersetzt und der PIC damit programmiert wird.

Benötigt wird

  • die MPLAB x IDE und ein
  • ein angeschlossenes PICkit3

In der MPLAB x IDE:

File->New Project

1.
Choose Project

Microchip Embedded -> Standalone Project

2.
Select Device

Family: Mid-Range 8-bit MCUs (PIC10/12/16/MCP)

Device: PIC12F629

3.
Select Header

Supported Debugger Header: None

4.
Select Tool: PICkit3
6.
Select Compiler: msasm
7.
Select Project Name and Folder
  • Project Name: LogicProbe_2
  • Project Location: xxx
  • Project Folder: xxx/LogicProbe_2.X
  • Set as main project ok
  • Encoding: ISO-8859-1

Den Quellcode ins Projekt aufnehmen

1.
Die Datei Logicprobe_2.asm in den Projektordner kopieren.
2.
Logicprobe_2.asm dem Projekt hinzufügen
  • In der MPLB IDE muss das Projekt LogicProbe_2 geöffnet sein
  • Sonst: File->Open Project
  • In dem Project-Fenster auf das Projekt LogicProbe_2 mit rechts klicken und Add Existing Item auswählen
  • Im Dialog die Datei LogicProbe_2.asm auswählen
  • Select

Das PICkit3 konfigurieren

Beim Erzeugen des Projektes wurde bereits in Schritt 4 das PICkit3 ausgewählt. Es muss noch konfiguriert werden.

1.
Im Project-Fenster ist das Projekt LogicProbe_2 ausgewählt.
2.
File->Project Properties (LogicProbe_2)
3.
Links im Fenster Categories PICkit3 auswählen
4.
Mitte oben Option categories Power auswählen
5.
Power target circuit from PICkit3 ok
  • Voltage Level 5.0
6.
Mit OK bestätigen

Den Quellcode übersetzen

Im Files-Fenster

  • LogicProbe_2.asm mit Doppelklick öffnen
  • "Run->Build Main Project" sollte ergeben:
  • Ergebnis:
      BUILD SUCCESSFUL (total time: 258ms)
      Loading code from /xxxx/MPLABXProjects/LogicProbe_2.X/dist/default/production/LogicProbe_2.X.production.hex...
      Loading completed

Die HEX-Datei LogicProbe_2.X/dist/default/production/LogicProbe_2.X.production.hex wurde erzeugt.

Damit kann der PIC programmiert werden.

  • Das PICkit3 anschließen
  • PIC in den Programmiersockel stecken
  • mit Button Make and Program Device Main Project programmieren.
  • Ergebnis:
      Connecting to MPLAB PICkit 3...
      Firmware Suite Version.....01.33.20
      Firmware type..............Midrange
      Target detected
      Device ID Revision = b

      The following memory area(s) will be programmed:
      program memory: start address = 0x0, end address = 0x396
      configuration memory

      Programming...
      Programming/Verify complete
  • Falls es zu "Connection Failed." kommt, kann es helfen, das PICkit3 ab- und anzustöpseln.

Programmierung mit HEX-Code

Benötigt wird

  • die MPLAB x IPE und ein
  • ein angeschlossenes PICkit3

In der MPLAB x IPE:

1.
Einstellungen
  • Family: Mid-Range 8-bit MCUs (PIC10/12/16/MCP)
  • Device: PIC12F629
  • Tool: PICkit3 SNo ....
2.
Settings->*Advanced Mode*
  • Password microchip
  • Log on
3.
Power
  • VDD 5.0
  • Power Target Circuit from Tool ok
4.
Operate
  • Apply
  • Connect
  • Im Programmiersockel muss ein PIC12F629 stecken
  • Dialog: CAUTTION ... -> OK
  • Ergebnis:
      Connecting to MPLAB PICkit 3...
      Firmware Suite Version.....01.33.20
      Firmware type..............Midrange
      Target detected
      Device ID Revision = b
  • Falls es zu "Connection Failed." kommt, kann es helfen, das PICkit3 ab- und anzustöpseln.
5.
PIC Programmieren
  • Source /xxxx/MPLABXProjects/LogicProbe_2.X/dist/default/production/LogicProbe_2.X.production.hex
      .... Hex file loaded successfully.
  • Program
      ...- Programming...
      The following memory area(s) will be programmed:
      program memory: start address = 0x0, end address = 0x396
      configuration memory

      Programming...
      Programming/Verify complete
      ...- Programming complete
      Pass Count: 1