Summary of Low cost ICSP PIC-programmer using PIC16F648A
This article describes the Galva-Wisp, a galvanically isolated In-Circuit Serial Programmer (ICSP) for PIC microcontrollers. It allows programming a PIC while it remains in its circuit, protecting the PC from high-voltage risks. The design uses two optocouplers for isolation and draws power from both the target circuit and the RS232 port. Unlike the Mark I version, the Mark II omits the MAX232 chip.Parts used in the Galva-Wisp:
- PIC16F648A
- PC827 or LTV827 dual optocouplers
- Green and red LEDs (Ø3mm, low current)
- BC547 NPN transistor
- TIP120 NPN Darlington transistor
- BAT85 Schottky diodes (or 1N4148)
- Schottky diode SB140 (or SB130, 1N5819)
- 20MHz Crystal
- 1k resistors
- 47Ω resistors
- 2k2 resistor
- 1000µF capacitor
- 100n axial capacitor
- 1µF tantalum capacitors
- 22µF capacitor
- 22pF capacitors
- Reset push button
- 15-pole male sub-D connector
- 9-pole female sub-D connector
- 18-pin IC socket
Galvanic from PC isolated PIC programmer
The Wisp648 from www.voti.nl is an In Circuit Serial Programmer to program a flash PIC which mostly can stay in your circuit.
No irritating doings like pulling the PIC out of the PCB, place it in the programmer, programming it, pull it out the programmer and place it back in the PCB, over and over again, it can stay in the circuit on your breadboard or PCB while programming the PIC.
It becomes risky when the PIC is connected direct to 230V main, like the wireless controlled (and trafo-less!) dimmer from this site, then it's better to program the PIC separate from the circuit.
Galva-Wisp
Another solution to protect your PC is to isolate the Wisp648 programmer galvanic from the PC or to build the Galva-Wisp, that's the Wisp628 but galvanic separated by two dual-optocouplers.
The Galva-Wisp is expanded with a green power on LED, a red program LED and a pushbutton for the possibility to reset the programmed PIC manual.
By the way, the manual reset is only possible when MCLR is enabled. (CONFIG MCLRE_ON in PIC-Basic (= default))
MARK II
The difference with Galva-Wisp MARK I is that MARK II has no MAX232 chip anymore.
The Galva-Wisp takes his power from the target PIC circuit (where the PIC stays which has to be programmed) (5V/20mA) and the RS232 COM-port (+/- 9V...12V).
The PIC which must be programmed can stay on his own PCB (or breadboard) while programming it, see the pictures underneath.
To connect the programmer with the PIC which must
be programmed you can do it with wires but it is more easy
when using a DIL-clip.
Programming the PIC is then also possible when the PIC is
already soldered into a PCB (see pictures above this one).
The cable on the DIL-clip should not be longer than 1 metre, recommended is a cable with a shield on each wire (see picture).
| PCB 130101 | Etch it by yourself (31mm x 53mm) (Etch manual on the Dutch section) |
| IC1 | PIC16F648A - Download the HEX file on the bottom of this page |
| IC2,IC3 | PC827 (of LTV827) (dual optocouplers) |
| LED1,LED2 | Green and red LED, Ø3mm, low current type |
| T1 | BC547 NPN transistor |
| T2 | TIP120 NPN darlington transistor (see text) |
| D1,D2,D3,D4 | BAT85 Schottky diode (if not available, then 1N4148) |
| D5 | SB140 Schottky diode (or SB130, or 1N5819) |
| X1 | Crystal 20MHz |
| R1,R2,R9...R12 | 1k |
| R3...R8 | 47Ω |
| R13 | 2k2 |
| C1 | 1000µF / 6,3V or 10V (radial) (see text) |
| C2 | 100n, axial (comes under IC1, in the IC socket) |
| C3,C4 | 1µF (tantalium) |
| C5 | 22µF |
| C6,C7 | 22pF |
| S1 | Reset push button (may left away) |
| Conn1 | 15-pole sub-D connector, male |
| Conn2 | 9-pole sub-D connector, female |
| IC-socket | 18-pins, own choice |
For more detail: Low cost ICSP PIC-programmer using PIC16F648A
Quick Solutions to Questions related to Galva-Wisp:
- What is the main purpose of the Galva-Wisp?
To program flash PICs while they remain in their circuit using galvanic isolation. - How does the Galva-Wisp protect the PC?
It isolates the programmer from the PC using two dual-optocouplers. - Can the Galva-Wisp be used with a PIC connected to 230V mains?
No, it is better to program the PIC separately if it connects directly to 230V mains. - What is the difference between Mark I and Mark II versions?
The Mark II version does not include the MAX232 chip found in Mark I. - Where does the Galva-Wisp get its power?
It draws power from the target PIC circuit (5V/20mA) and the RS232 COM-port (+/- 9V...12V). - Is manual reset possible on all configurations?
Manual reset is only possible when MCLR is enabled via CONFIG MCLRE_ON. - What type of connection is recommended for the DIL-clip cable?
A shielded cable on each wire is recommended, with a maximum length of one metre. - Can this programmer handle soldered PICs?
Yes, programming is possible even when the PIC is already soldered into a PCB.
Related projects
INDUCTANCE & CAPACITANCE METER PIC16F648A LCMETER
PIC16F648A LC meter Simply, + -1% accuracy battery powered compact LC for low power consumption does not have a meter is recommended....
Sensors & Temperature · PIC16F648DCF77 clock-thermostat using PIC16F648A
Always at the right time your house on temperature This project make use of a PIC16F648(A) and a DCF77 receiver from Conrad...
LCD & Display Projects · PIC16F648ARC5/RC6 codes on a LCD using PIC16F648A
A simple project to test and display the transmitted codes from remote controls which work with the RC5 protocol, like the TV...
Programmers & ICSPCalculator Test using PIC24FJ64GA006 with Proteus Simulation
Introduction The Calculator Test using EASYHDL is a practical microcontroller project built on the PIC24FJ64GA006 and simulated in Proteus. This project demonstrates...
Programmers & ICSPPID Controlled Oven using TMS320F28027PT with Proteus Simulation
IntroductionThis project demonstrates a PID controlled oven implemented using a PICCOLO TMS320F28027PT microcontroller and verified through Proteus simulation.It is a practical microcontroller...
Programmers & ICSPPICCOLO Motor Controller Sample Design using TMS320F28023PT with Proteus Simulation
IntroductionThis project demonstrates a PICCOLO motor controller sample design implemented using the TMS320F28023PT Piccolo microcontroller and tested through Proteus simulation. It focuses...
