Buy(Cart) Contact NSDSP Home


ICSP connection

Support summary

  • Programming - NSDSP-1 with NSHVX or NSDSP-2
  • Debugging provisions - No

ICSP Connection

PIC12F617 can only be programmed with HVP (High Voltage Programming). This means it requires Vpp voltage (higher than Vdd) for programming.

NSDSP-2 generates Vpp internally and can program PIC12F617.

NSDSP-1 cannot generate Vpp. Therefore, to be programmed with NSDSP-1, PIC12F617 requires NSHVX High Voltage Extension or an external HVP circuit.

Since release 134, NSDSP software, when used with NSDSP-1, assumes that NSHVX is connected when programming PIC12F617. It manipulates the PGM/RTS pin (LVP, or pin 6 of ICSP header of NSDSP programmers) to control MCLR state through NSHVX. Even when NSHVX is not connected, NSDSP-1 will still tooggle PGM/RTS pin during programming.

Instead of NSHVX, you can use an external HVP circuit. Without NSHVX, PIC12F617 will be programmed correctly, but it may not reset after the programming, especially if MCLRE configuartion bit is ON. In such situation, it may be necessary to power-cycle the chip, or disconnect NSDSP and manually connect MCLR pin to the ground for a short moment to reset the PIC.

These considerations do not apply to NSDSP-2, which does not use PGM/RTS pin for HVP control.

Target Voltage Below 4.5V

If voltage is less than 4.5V programming is severely limited - it is impossible to bulk erase the device, it is also impossible to erase configuration bits, UID.

NSDSP-1 cannot detect target voltage and it assumes that the voltage is above 4.5V. If the actual target voltage is less, programming will fail. However, if you tell NSDSP that the target voltage is below 4.5V through programming software, NSDSP will use special low-voltage algorithm. NSDSP will verifies if the desired programming can be performed at voltages below 4.5V, and if it is possible (device is not code protected, configuration bits do not change or only change from 1 to 0, UID is not programmed), it performs the programming. If such programming is impossible, NSDSP software will stop and show an error message.

NSDSP-2 can detect actual voltage, therefore it may choose the algorithm based on the detected voltage. However, you can override this decision by specifying your own voltage value. This will disable the voltage detection. For example, you can try to force normal algorithm even if voltage is slightly less than the threashold.

Programming using low-voltage algorithm may be considerably slower. In addition, you may need to decrease programming speed to 3MHz or below.

Programming Benchmarks

We have measured time necessary to program and verify PIC12F617.

Operation Time
Programming and Verification 1.8s
Programming only 1.7s
Verification only 0.2s

The measurements reflect the time necessary to program/verify the entire chip, including all user programmable memory areas.


NSDSP cannot be used to debug PIC12F617.


Microchip PIC12F617 page

Northern Software Home NSDSP Contact Us Purchase/Vew Cart

© 2007-2024 Northern Software Inc. All Rights Reserved.