Elektronik-Projekt: Elektronischer Adventkranz


zurück zu Elektronik, Homepage

Adventkranz im Betrieb

6. Programmieren mit ICSP

Allgemeines:
Unter Programmieren mit ICSP[1] (manchmal auch ISP) versteht man das Programmieren eines (programmierbaren) Bauteils direkt in der Schaltung. Das zu programmierende Bauteil (hier der PIC16F87) muss bei einem Software-Update oder bei der Erstprogrammierung nicht aus der Schaltung genommen werden. Je nach Bauteilfamilie sind dazu unterschiedlich viele Leitungen notwendig. Bei der PIC16-Familie sind für die ICSP-Programmierung die folgenden fünf Leitungen notwendig. Die Pinnummern beziehen sich hier auf den für dieses Projekt verwendeten PIC16F87 (bzw. für alle PIC-Typen in einem 18poligen DIP-Gehäuse).

Weiters ist bei der PIC-Familie für die ICSP-Programmierung eine entsprechende Interfaceschaltung notwendig. Die Abbildung E.1 zeigt diesen Ausschnitt aus dem Schaltplan aus Abbildung 2.1 (siehe Abschnitt 2. Schaltungsbeschreibung)

Programmieren mit ICSP (Schaltungsausschnitt)

Downloadkabel:
Als Downloadkabel verwende ich ein 6poliges Flachbandkabel mit einer Länge von ca. 15 bis 20 cm. Warum 6polig? Die Taktleitung ist von störenden Einstreuungen sehr empfindlich. Sie befindet sich bei mir daher zwischen zwei Leitungen mit fixem Potential (GND und +5V). Die Abbildung E.2 zeigt die "Schaltung" des Downloadkabels.

Programmieren mit ICSP (Downloadkabel)

Programmiergerät:
Zur Programmierung des PIC-Mikrocontroller verwende ich einen Nachbau aus dem Internet. Auf der Webseite von Jörg Bredendiek [Sprut 2007] befasst sich der Autor sehr ausführlich mit der PIC-Familie und stellt auch einige Eigenentwicklungen vor, darunter auch den "Brenner5", den ich schon lange verwende und mir dabei gute Dienste leistet. Als Software verwende ich "PBrennerNG" ebenfalls von dieser Seite.
Dieser Programmer ist sehr einfach aufgebaut - verwendet allerdings den Parallelport - und benutzt intern auch das ICSP-Prinzip. Die Abbildung E.3 zeigt das Programmiergerät, das Downloadkabel und die "Zielhardware" (also den elektronischen Adventkranz).

Programmieren mit ICSP
nach oben

1 ICSP steht für In-Circuit-Serial-Programming

nach oben


zurück zu Elektronik, Homepage

Autor: Stefan Buchgeher
Erstellt: 24. Januar 2010
Letzte Änderung: