PIC16F887
PIC16F913 PIC16F914 PIC16F916 PIC16F917 PIC16F946PIC16F887
Support summary
ICSP Connection
All VSS and VDD pins must be connected. Even if one of these pins is not connected, programming may fail.
LVP Programming
Low-Voltage Programming (LVP) can only be used for these PIC devices if the LVP configuration bit is enabled. Fresh (unprogrammed) devices have LVP bit set and therefore they can be programmed. It is impossible to disable LVP bit during LVP programming, but if the device has been previously programmed with HVP programmer, the LVP bit may have been disabled.
When brown-out is enabled with BOREN configuration bit, LVP is only possible when the VDD voltage is above the brown-out threshold.
These limitations may be avoided with High-Voltage Programming (HVP). NSDSP-2 can generate high voltage for HVP internally. NSDSP-1 cannot, therefore NSDSP-1 requires NSHVX or an external circuit for HVP.
HVP Programming
NSDSP-2 can program PIC16F887 with HVP.
With NSDSP-1, HVP programming is possible, but only with NSHVX High Voltage Extension or an external HVP circuit.
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, EEPROM, 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, EEPROM is not programmed, 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 PIC16F887.
Operation | Time | Programming and Verification | 4.4s | Programming only | 4.1s | Verification only | 0.4s |
---|
The measurements reflect the time necessary to program/verify the entire chip, including all user programmable memory areas and very slow data EEPROM.
Debugging
NSDSP cannot be used to debug PIC16F887.
Links
© 2007-2024 Northern Software Inc. All Rights Reserved.