PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] ICSP Brenner (zum Nachbauen)



PICture
10.09.2009, 07:25
Hallo!

Irgendwann lohnt sich nicht mehr nötige Hardware an Entwicklungsplatine anzuschliessen und man baut sie schon im Gerät (z.B. Roboter). Um einen µC in fertiger Schaltung zu programmieren (brennen) habe ich mir einen ICSP Brenner auf einer Lochrasterplatine gebaut und ausprobiert (siehe Code).

Dafür habe ich bisher benutzten Brenner (P16PRO PROGRAMMER an LPT) modifiziert mit Berücksichtigung allen Defekten, die ich in der Zeit der Benutzung reparieren mußte. Aus dem Grund sind einige Bauteile vielleicht überdimensioniert, dafür aber ist der Brenner viel zuverlässiger. Weil es jetzt keine PIC-Sockeln gibt, ist er auch kleiner.

Als Spannungsregler habe ich standard ICs mit nötigen Kühlkörper genommen (im original waren es "L" Typen die wegen Überhitzung kaputt gegangen sind). Aus meiner Bastelkiste habe ich größere Transistoren genommen (im original waren es BC557 die aus gleichem Grund kaputt gegangen sind).

Ich benutze weiterhin ic-prog mit folgenden Einstellungen: Programmer: Propic2 Programmer, Ports: LPT1, I/O Delay: 4, Interface: Direct I/O, Invert Data Out, Invert Data In, Invert Clock. Es sollte auch mit anderer Software für LPT funktionieren, habe ich aber selber nicht probiert.

Damit ich alle PICs ohne VPP Umschaltung programmieren könnte, habe ich VPP und VPP40 zusammen verbunden und damit auch einen Transistor gesparrt. Der Inverter IC ist hier 7406 N, also standard (vorher war es 74LS06), weil er längeres Kabel mit größeren Eigenkapazitäten bis um 750 pF zwischen beliebiger Ader und Schirm treiben muß.

Als Verbindungskabel benutze ich 3 m langen USB Kabel mit einem Durchmesser von 4,5 mm und zwei "A" Stecker an Enden. Das Kabel wird auf beiden Enden in eine USB Buchse mit ca. 20 cm langem USB Kabel (aus PC Slotblende) an 5 Pins von Stiftleiste mit 2,56 mm Abstand gesteckt. Das 3 m lange USB Kabel mit 3,5 mm Durchmesser eignet sich für Verbindung des Brenners nicht. Man könnte es mit kürzerem Kabel versuchen.

Zum Brennen müssen die benutzte PIC-Pins PGC, PGD, VPP und VCC von der Hardware in Schaltung (z.B. mit Jumpers) getrennt werden. Der Brenner wird direkt in die LPT Buchse am Computer (bei mir Notebook) eingesteckt, ohne Kabel dazwischen. Seit ich ihn gebaut habe, brenne ich damit mit entsprechenden Adapter (Umschalter, Relais, bzw. DIP-Schalter) alle meine PICs (auch SMD), sowohl auf Entwicklungs- als auch fertigen Platinen.

Wie auch immer, habe ich es auf Lochrasterplatine mit 1206 SMD Bauteilen aufgebaut (siehe Foto). Leider habe ich in meiner Bastelkiste kein geeignetes Netzteil, nur ein Trafo gefunden. Deswegen auf meiner Platine ist noch ein runder Gleichrichter und ein Siebelko 1000 µF/35 V. Aus dem Grund, das der Trafo um 30 V Gleichspannung liefert, mußte ich den Spannungsregler 7805 auf einen Kühlkörper befestigen, damit er nicht zu warm wird.

Ich wünsche allem, die sich den Brenner nachbauen würden, viel Spass und Zufriedenheit damit und freue mich auf eure Berichte mit Verbesserunshinweisen. :)

MfG

11|\ 10 schwarz
LPT3 >---|1>O-+------------------------------------------------> PGC
|/ | R1 1k
| ___ VCC
+-|___|-+ +
5|\ 6 ___ | |
LPT2 >---|2>O-+-|___|-+--+
|/ |
/| | R2 1k grün
LPT10 <---O<3|-+----------------------------------------------->< PGD
8 \|9 _____
| | T1 weiß
min. >------------+--+-|LM317|----+--+---+------ --+---------> VPP
+17V | | |_____| 240| | C2| v / | rot +13V
C1 --- | | ___R3| --- | --- V LED VCC
µ1 --- | +-|___|-+ --- | ___ | - grün +
1|\ 2 | | | ___ | µ1+-|___|-+ | LED |
LPT5 >---|4>O-+ === | +-|___|----+ R5 4k7| +-|<----+
|/ | GND | R4 2k2 | | | ___
| | === | +-|___|-+
13|\ 12| | GND ___ | R9 1k |
LPT6 >---|5>O-+------|---------------------|___|-+ ===
|/ | R6 4k7 GND
| ____
| | | T2 rot
1...6 = 7406 +-|7805|--------+---+------ ------------> VCC
|____| | | v / +5V
T1,T2 = (2S)B1357 | C3 --- | ---
=== µ1 --- | ___ |
GND | +-|___|-+ Schirm
=== R7 4k7| 18...25 <-+-> GND
3|\ 4 GND ___ | LPT |
LPT4 >---|6>O------------------------------|___|-+ ===
|/ R8 4k7 GND

(created by AACircuit v1.28.6 beta 04/19/05 www.tech-chat.de)