IDE

Um mit den PICs zu arbeiten, empfielt sich eine IDE. In dieser werden die Programme geschrieben, die auf den PIC gebrannt werden sollen. Um bei eventuellen Problemen die Fehlersuche zu vereinfachen, würde ich euch die MPLAB X IDE empfehlen. Diese nutze ich selbst und kann kostenlos von der Microchip-Website runtergeladen werden.

Um über den Bootloader später die Programme hochladen zu können, müsst ihr von Microchip das Programm “AN1310 v1.05r” runterladen. Sobald das installiert ist, seid ihr damit schon fertig

Bootloader

Der Bootloader sorgt für eine einfache Verbindung des PICs mit dem PC. Außerdem übernimmt er das Flashen des Programmcodes auf den Controller.

Wenn ihr bei mir die Platinen kauft, kommt ein Controller mit, der bereits mit dem Bootloader geflasht und auf Funktion getestet wurde. Solltet ihr allerdings ein Fehler machen und der Bootloader wird nicht mehr erkannt, so findet ihr hier die angepassten MPLAB-Projekte speziell auf die Controller zugeschnitten. Verändert daran bitte nichts, da sonst keine Funktion garantiert werden kann.

Da der Bootloader etwas älter ist, sind die Projekte noch im MPLAB 8-Format. Wenn ihr die Projekt emit MPLAB X öffnen wöllt, müsst ihr über “File -> Import -> MPLAB IDE v8” das Projekt importieren. Die fertig kompilierte Hex-Datei kann im dist-Ordner gefunden werden.

Projektvorlage

Damit ihr die Controller erfolgreich programmieren könnt, müssen in jedem Code entsprechend auch einige Dinge initialisiert werden. Damit das auch funktioniert und ihr euch nicht am Anfang in Themen wie “Fuse-Bits” oder “Präprozessoren” einarbeiten müsst, hab ich Projekte für die Controller vorbereitet. Dabei sind bereits die wichtigsten Fuse-Bits gesetzt und die Ports entsprechend der Boards konfiguriert. Die Projekte sind mit MPLAB X erstellt und können damit auch einfach geöffnet werden.

Da der Bootloader selbst auch Speicherplatz auf dem Controller braucht, muss man diesen natürlich vor dem restlichen Code schützen. Sollte der Bootloader überschrieben werden, kann der Code nicht mehr geladen werden und der Controller muss neu mit dem Bootloader beschrieben werden. Damit das nicht passiert, hab ich die Vorlagen bereits insofern konfiguriert, dass der Speicherplatz für den Bootloader angepasst an die Controller (der Bootloader sitzt beim 16F in anderen Adressen als beim 18F) bereits reserviert ist.