PIC-Brenner9

ein USB-Programmiergerät für PIC18FxxJxx, PIC24 und dsPIC33F Flash-PICs

zurück zu PIC-Projekte , andere Brenner , PIC-Prozessoren , Elektronik , Homepage

 
Einleitung
Entwicklungsstand
Firmware / Bootloader / Software
Brenner9-Hardware
Brenner8-Anpassung
Brenner8&9-Kombinationen
Entwicklung

Handbuch zum Brenner9

zurück
 




Einleitung

Mit den Familien  PIC18FxxJxx, PIC24 und dsPIC33 hat Microchip eine Reihe neuer Microcontroller und Signalcontroller auf den Markt gebracht, die mit einer Signalspannung von 3,3V arbeiten. Dadurch lassen sie sich von vielen Programmiergeräten nicht brennen, da diese Geräte auf 5V ausgelegt sind. Andere Programmiergeräte (wie z.B. der ICD-2)  können diese Chips nur brennen, wenn die Stromversorgung von außen (also von der Schaltung in der der PIC sitzt) erfolgt.

Der Brenner9 ist speziell für diese 3,3V-Schaltkreise ausgelegt. Er kann sie im universellen Programmieradapter (nur DIL-Gehäuse) oder in der Schaltung brennen. Der Brenner9 hat keinen on-board-Programmiersockel, er brennt ausschließlich über das ICSP-Interface.

Der Brenner9 ist mit dem Brenner8P eng verwandt. Beide werden von der gleichen Windowssoftware ( US-Burn ab Version 1.7) und Linuxsoftware (usburn) angesteuert.

Es gibt zwei unterschiedliche Brenner9-Entwürfe. Den aufwendigeren Brenner9N und den einfacheren Brenner9L.

Ein vorhandener Brenner8P (ab Rev. 5) lässt sich durch eine zusätzliche Adapterplatine als Brenner9N verwenden. Dazu ist dann die Brenner9-Firmware mit Hilfe des Bootloaders in den Steuerpic des Brenner8P zu laden. Um den Brenner8P wieder als normalen Brenner8P einzusetzen (für 5V-PICs) ist lediglich die Brenner8-Firmware wieder zu laden, und die Adapterplatine nicht zu benutzen.

Sowohl Lars wie auch Erkut Ergil entwarfen einen kombinierten Brenner8p9, der sowohl einen 5V-ICD/ICSP-Anschluss wie auch einen 3,3V-ICD/ICSP-Anschluss besitzen. Beide nutzen SMD-Technik.



Entwicklungsstand

Mit der ersten Firmware (V.3.10) und der Windows-Software USBurn1.7alpha2 lassen sich PIC18FxxJxx, PIC24 sowie dsPIC33F brennen, wenn als Brenner ein Brenner9N verwendet wird. Getestet habe ich mit einem modifizierten Brenner8P mit Adapterplatine sowie mi einem Brenner9L.

Die Database 14 enthielt einige Fehler, die dazu führten, dass beim Erkennen einiger PIC18FxxJxx-Typen die Software USBurn abstürzt. Seit der Database 16 ist dieses Problem behoben.
Foto des Brenner9L


Firmware / Bootloader / Software

Als Bootloader für den Brenner9N kommt der Bootloader1.0 zum Einsatz. Die erste Version der Firmware (V 3.10) für den Brenner9N brennt z.Z. PIC24HJ, dsPIC33FJ (mit Ausnahme der ID-Zellen) sowie PIC
18FxxJxx.
Für den Brenner9L gibt es angepasste Versionen der Firmware und des Bootloaders, da der SteuerPIC des Brenner9L mit einem verminderten internen Takt arbeitet. Die Funktion der normalen Brenner9N-Firmware im Brenner9L ist nicht garantiert.

Als Windowssoftware dient US-Burn ab Version V1.7. Die Software steht hier zum Download bereit, in seinem ZIP-File befinden sich auch der Bootloader sowie die Brenner9-Firmware.
Als Linux-Software dient usburn für Linux ab Version V0.2. Die Software steht hier zum Download bereit, auch in seinem ZIP-File befinden sich der Bootloader sowie die Brenner9-Firmware.

Was braucht man?



Brenner9-Hardware

I
ch unterstütze momentan zwei unterschiedliche Brenner9-Designs.

Version Brenner9N
Das ist im Prinzip ein Brenner8P mit integriertem 3,3V-Adapter aber ohne Ladungspumpen, Testsockel und Vpp-Schalter. Da alle Baugruppen erprobt sind, sehe ich kein Entwicklungsrisiko.

Brenner9N Entwurf

Version Brenner9L
Hier wird ein PIC18LF2550 (gibt es nicht an jeder Straßenecke) als Steuer-PIC eingesetzt und mit 3,3V betrieben. Dadurch entfallen die 3,3V-Pegelwandler, und das ganze Design vereinfacht sich deutlich. Die verringerte Betriebsspannung macht einen verminderten internen Takt des PIC nötig. Das hat Einfluss auf das Timing in der Firmware. Außerdem ist ein angepasster Bootloader nötig. Beides findet man im Zip-File der Software USBurn.
Das Layout passt mit normalen bedrahteten Bauteilen und einem SteuerPIC im DIL-Gehäuse auf 3,3cm x 7,5cm. Das ist 1/3 der Größe eines Brenner8P.

Brenner9L Entwurf



Brenner8P-Anpassung

Ein Brenner8P oder Brenner8miniP ab Revision 5 kann
mit einem Adapter als Brenner9N eingesetzt werden. Vorraussetzung ist ein:
Für den Brenner8P ist eine Adapterplatine zu bauen, die in die ICSP-Leitung eingeschleift werden muss.


Adapterplatine

Um 3,3V-PICs (PIC18FxxJxx, PIC24, dsPIC33F) mit einem 5V-Brenner wie dem Brenner8P-rev5 zu programmieren benötigt man einen Adapter, der die Pegelwandlung vornimmt. Ideal wäre sicherlich ein schneller Levelshifter mit Transistoren in Basisschaltung. Ich habe aber gute Erfahrungen mit einer einfachen Spannungsteilerschaltung gemacht.

Die Schaltung ist nebenstehend zu sehen.

Die Signale PGC, PGD und MCLR sind mit Spannungsteilern aus 2,2kOhm und 4,7kOhm versehen. Die 47pF an PGD und PGC unterdrücken HF-Schwingungen an den Schaltflanken.

3,3V-Vdd wird mit einem 3,3V-Z-Diode (D1) aus 5V-Vdd erzeugt. Z-Dioden haben manchmal recht hohe Toleranzen, hier ist ein 1W-Typ mit höchstens 5% Toleranz einzusetzen. Die von der Z-Diode stabilisierte Spannung darf nicht unter 3,2V liegen. Ein etwas überhöhter Wert von maximal 3,6V ist tolerierbar. Falls die Z-Diode eine zu geringe Z-Spannung aufweist, kann man eine Shottky-Diode (BAT42) mit der Z-Diode in Reihe schalten. Die Shottky-Diode ist dabei genau andersherum zu polen als die Z-Diode!

C6 dient als Siebkondensator, um Vdd bei Lastschwankungen konstant zu halten. Er sollte auf keinen Fall größer ausgelegt werden.


D2 ist eine Sicherheitsdiode. Falls versehentlich mit den Einstellungen für einen 5V-PIC ein 3,3V-PIC angesteuert würde, dann könnte MCLR bis zu 13V betragen, was am 3,3V-Ausgang immerhin noch fast 9V wären. R5 sollte eine Beschädigung des Target eigentlich vermeiden, aber D2 begrenzt zusätzlich die Spannung am Target auf maximal 3,5V. D3 erlaubt den Datenfluss vom Target zum Brenner8P.

Das nebenstehende Foto zeigt den funktionstüchtigen Prototypen auf einer Streifenleiterplatine. Das Kabel wird in den ICSP-Steckverbinder des Brenner8P gesteckt. Das Target wird an den ICSP-Steckverbinder des Adapters angeschlossen.
Das richtige Layout mit liegenden bedrahteten Bauelementen findet auf 4cm x 4cm Platz.


Foto des Prototyps



Kombinierte Brenner8&9


Brenner8P9smd von Lars

Brenner8P9smd
Lars hat eine aktualisierte Version des SMD-Brenners entworfen und erprobt.

weiter hier


Brenner8p9 von Erkut Ergil
Brenner8p9-Foto Erkut Ergil entwarf einen kombinierten Brenner8p9. Es ist ein Brenner8p in SMD-Technik mit integriertem 3,3V-Adapter. Die 5V- und 3,3V-Ausgänge sind als RJ45-Buchsen ausgelegt, und entsprechen damit mechanisch in eher dem ICD-Anschluss von Microchip als meinem 5-poligen ICSP-Anschluss.

weiter hier




Bekannte Bugs

 Wird in USBurn (Version<1.10a5) im Fenster "Options - Calibration/Test - Hardware Test" der "Vpp-on"-Button angeklickt, dann stürzt der Brenner9 ab.


Entwicklung

01.04.2008
Bootloader und Firmware für den Brenner9L liegen im ZIP-File von USBurn.


05.03.2008
Korrektur der Position des BF959 in beiden Layouts.


05.02.2008
Layouts für alle Versionen und  das Brenner9-PDF-Handbuch stehen zum Download.

24.09.200
7
US-Burn 1.7a2

21.09.2007
erste funktionstüchtige FirmwareV3.10 und US-Burn 1.7a1

01.09.200
7
Preview


zurück zu PIC-Projekte , andere Brenner , PIC-Prozessoren , Elektronik , Homepage

autor: sprut
erstellt: 01.09.2007
letzte Änderung: 16.12.2010