Release Notes for MPLAB® ICD 2 In-Circuit Debugger
MPLAB® IDE v8.10
MPLAB ICD 2 DLL v8.1.0.23
Operating System (Firmware) Files
|
PIC12F/16F |
v2.07.05 |
(ICD01020705.hex) |
|
PIC12F61X/16F61X |
v1.01.02 |
(ICD15010102.hex) |
|
PIC18F |
v2.07.07 |
(ICD04020707.hex) |
|
PIC18F Extended |
v1.04.03 |
(ICD05010403.hex) |
|
PIC18C601/801 |
v1.02.04 |
(ICD06010204.hex) |
|
PIC10F2XX,PIC16F54/57 |
v1.04.05 |
(ICD07010405.hex) |
|
PIC16F68X |
v1.05.06 |
(ICD08010506.hex) |
|
PIC12F629/675; PIC16F630/676 |
v1.00.02 |
(ICD09010002.hex) |
|
dsPIC30F Rev B1 |
v1.06.03 |
(ICD10010603.hex) |
|
dsPIC30F SMPS Rev 1 |
v1.00.07 |
(ICD18010007.hex) |
|
PIC18F67J/87J |
V2.00.07 |
(ICD11020007.hex) |
|
PIC16F72, PIC16F8X, PIC16F627/628 |
v1.02.02 |
(ICD12010202.hex) |
|
PIC18F45K20/14K50 |
v2.01.09 |
(ICD16020109.hex) |
|
dsPIC33F, PIC24F, PIC24H |
v3.03.07 |
(ICD14030307.hex) |
|
PIC32MX |
v1.00.05 |
(ICD20010005.hex) |
April 22, 2008
IMPORTANT: Do not allow Windows® OS to pick a default USB driver; MPLAB ICD 2 will not work with this driver. You must follow the procedure specified at MPLAB IDE software installation for USB driver set-up. If you did not set up the port during MPLAB IDE installation, see the section in this readme file on USB Port Setup.
Table of Contents
2 Operating System Support List
5 Repairs and Enhancements Made in v8.10
7 Powering the MPLAB ICD 2 and Target Board
8 Setting Up the MPLAB ICD 2 and Target Board
10 PIC18FXXJ, PIC18FXXK, PIC24F, dsPIC33F Device Programming Considerations
11 Device Programming Considerations
14 Universal Programming Module (AC162049)
|
dsPIC30F2010 |
dsPIC30F4011 |
dsPIC30F6011A |
|
dsPIC30F2011 |
dsPIC30F4012 |
dsPIC30F6012 |
|
dsPIC30F2012 |
dsPIC30F4013 |
dsPIC30F6012A |
|
dsPIC30F2020 |
dsPIC30F5011 |
dsPIC30F6013 |
|
dsPIC30F2023 |
dsPIC30F5013 |
dsPIC30F6013A |
|
dsPIC30F3010 |
dsPIC30F5015 |
dsPIC30F6014 |
|
dsPIC30F3011 |
dsPIC30F5016 |
dsPIC30F6014A |
|
dsPIC30F3012 |
dsPIC30F6010 |
dsPIC30F6015 |
|
dsPIC30F3013 |
dsPIC30F6010A |
|
|
dsPIC30F3014 |
dsPIC30F6011 |
|
|
|
|
|
|
dsPIC33FJ128GP202(2)(4) |
dsPIC33FJ12GP201(2)(4) |
dsPIC33FJ64GP202(2)(4) |
|
dsPIC33FJ128GP204(2)(4) |
dsPIC33FJ12GP202(2)(4) |
dsPIC33FJ64GP204(2)(4) |
|
dsPIC33FJ128GP206(2)(4) |
dsPIC33FJ12MC201(2)(4) |
dsPIC33FJ64GP206(2)(4) |
|
dsPIC33FJ128GP306(2)(4) |
dsPIC33FJ12MC202(2)(4) |
dsPIC33FJ64GP306(2)(4) |
|
dsPIC33FJ128GP310(2)(4) |
dsPIC33FJ16GP304(2)(4) |
dsPIC33FJ64GP310(2)(4) |
|
dsPIC33FJ128GP706(2)(4) |
dsPIC33FJ16MC304(2)(4) |
dsPIC33FJ64GP706(2)(4) |
|
dsPIC33FJ128GP708(2)(4) |
dsPIC33FJ256GP506(2)(4) |
dsPIC33FJ64GP708(2)(4) |
|
dsPIC33FJ128GP710(2)(4) |
dsPIC33FJ256GP510(2)(4) |
dsPIC33FJ64GP710(2)(4) |
|
dsPIC33FJ128GP802(2)(4) |
dsPIC33FJ256GP710(2)(4) |
dsPIC33FJ64GP802(2)(4) |
|
dsPIC33FJ128GP804(2)(4) |
dsPIC33FJ256MC510(2)(4) |
dsPIC33FJ64GP804(2)(4) |
|
dsPIC33FJ128MC202(2)(4) |
dsPIC33FJ256MC710(2)(4) |
dsPIC33FJ64MC202(2)(4) |
|
dsPIC33FJ128MC204(2)(4) |
dsPIC33FJ32GP202(2)(4) |
dsPIC33FJ64MC204(2)(4) |
|
dsPIC33FJ128MC506(2)(4) |
dsPIC33FJ32GP204(2)(4) |
dsPIC33FJ64MC506(2)(4) |
|
dsPIC33FJ128MC510(2)(4) |
dsPIC33FJ32GP302(2)(4) |
dsPIC33FJ64MC508(2)(4) |
|
dsPIC33FJ128MC706(2)(4) |
dsPIC33FJ32GP304(2)(4) |
dsPIC33FJ64MC510(2)(4) |
|
dsPIC33FJ128MC708(2)(4) |
dsPIC33FJ32MC202(2)(4) |
dsPIC33FJ64MC706(2)(4) |
|
dsPIC33FJ128MC710(2)(4) |
dsPIC33FJ32MC204(2)(4) |
dsPIC33FJ64MC710(2)(4) |
|
dsPIC33FJ128MC802(2)(4) |
dsPIC33FJ32MC302(2)(4) |
dsPIC33FJ64MC802(2)(4) |
|
dsPIC33FJ128MC804(2)(4) |
dsPIC33FJ32MC304(2)(4) |
dsPIC33FJ64MC804(2)(4) |
|
|
|
|
|
MCV08A |
|
|
|
|
|
|
|
PIC10F200(1) |
PIC10F204(1) |
PIC10F220(1) |
|
PIC10F202(1) |
PIC10F206(1) |
PIC10F222(1) |
|
|
|
|
|
PIC12F508(1) |
PIC12F615(1) |
PIC12F683(1) |
|
PIC12F509(1) |
PIC12F629(1) |
PIC12HV609(1) |
|
PIC12F510(1) |
PIC12F635(1) |
PIC12HV615(1) |
|
PIC12F609(1) |
PIC12F675(1) |
|
|
|
|
|
|
PIC16F505(1) |
PIC16F690(1) |
PIC16F876A |
|
PIC16F506(1) |
PIC16F716(1) |
PIC16F877 |
|
PIC16F610(1) |
PIC16F737 |
PIC16F877A |
|
PIC16F616(1) |
PIC16F747 |
PIC16F88 |
|
PIC16F627A(1) |
PIC16F767 |
PIC16F882 |
|
PIC16F628A(1) |
PIC16F777 |
PIC16F883 |
|
PIC16F630(1) |
PIC16F785(1) |
PIC16F884 |
|
PIC16F631(1) |
PIC16F818 |
PIC16F886 |
|
PIC16F636(1) |
PIC16F819 |
PIC16F887 |
|
PIC16F639(1) |
PIC16F87 |
PIC16F913 |
|
PIC16F648A(1) |
PIC16F870 |
PIC16F914 |
|
PIC16F676(1) |
PIC16F871 |
PIC16F916 |
|
PIC16F677(1) |
PIC16F872 |
PIC16F917 |
|
PIC16F684(1) |
PIC16F873 |
PIC16F946 |
|
PIC16F685(1) |
PIC16F873A |
PIC16HV616(1) |
|
PIC16F687(1) |
PIC16F874 |
PIC16HV785(1) |
|
PIC16F688(1) |
PIC16F874A |
|
|
PIC16F689(1) |
PIC16F876 |
|
|
|
|
|
|
PIC18C601 |
PIC18F4458 |
PIC18F66J65(2)(4) |
|
PIC18C801 |
PIC18F448 |
PIC18F6720 |
|
PIC18F1220 |
PIC18F4480 |
PIC18F6722 |
|
PIC18F1230(2) |
PIC18F44J10(2)(4) |
PIC18F6723 |
|
PIC18F1320 |
PIC18F44K20 |
PIC18F67J10(2)(4) |
|
PIC18F1330(2) |
PIC18F4510 |
PIC18F67J11(2)(4) |
|
PIC18F2220 |
PIC18F4515 |
PIC18F67J50(2)(4) |
|
PIC18F2221 |
PIC18F452 |
PIC18F67J60(2)(4) |
|
PIC18F2320 |
PIC18F4520 |
PIC18F8310 |
|
PIC18F2321 |
PIC18F4523 |
PIC18F8390 |
|
PIC18F2331 |
PIC18F4525 |
PIC18F8393 |
|
PIC18F2410 |
PIC18F4539 |
PIC18F83J11(2)(4) |
|
PIC18F242 |
PIC18F4550 |
PIC18F83J90(2)(4) |
|
PIC18F2420 |
PIC18F4553 |
PIC18F8410 |
|
PIC18F2423 |
PIC18F458 |
PIC18F8490 |
|
PIC18F2431 |
PIC18F4580 |
PIC18F8493 |
|
PIC18F2439 |
PIC18F4585 |
PIC18F84J11(2)(4) |
|
PIC18F2450 |
PIC18F45J10(2)(4) |
PIC18F84J90(2)(4) |
|
PIC18F2455 |
PIC18F45K20 |
PIC18F8520 |
|
PIC18F2458 |
PIC18F4610 |
PIC18F8525 |
|
PIC18F248 |
PIC18F4620 |
PIC18F8527 |
|
PIC18F2480 |
PIC18F4680 |
PIC18F8585 |
|
PIC18F24J10(2)(4) |
PIC18F4682 |
PIC18F85J10(2)(4) |
|
PIC18F24K20 |
PIC18F4685 |
PIC18F85J11(2)(4) |
|
PIC18F2510 |
PIC18F6310 |
PIC18F85J15(2)(4) |
|
PIC18F2515 |
PIC18F6390 |
PIC18F85J50(2)(4) |
|
PIC18F252 |
PIC18F6393 |
PIC18F85J90(2)(4) |
|
PIC18F2520 |
PIC18F63J11(2)(4) |
PIC18F8620 |
|
PIC18F2523 |
PIC18F63J90(2)(4) |
PIC18F8621 |
|
PIC18F2525 |
PIC18F6410 |
PIC18F8622 |
|
PIC18F2539 |
PIC18F6490 |
PIC18F8627 |
|
PIC18F2550 |
PIC18F6493 |
PIC18F8628 |
|
PIC18F2553 |
PIC18F64J11(2)(4) |
PIC18F8680 |
|
PIC18F258 |
PIC18F64J90(2)(4) |
PIC18F86J10(2)(4) |
|
PIC18F2580 |
PIC18F6520 |
PIC18F86J11(2)(4) |
|
PIC18F2585 |
PIC18F6525 |
PIC18F86J15(2)(4) |
|
PIC18F25J10(2)(4) |
PIC18F6527 |
PIC18F86J16(2)(4) |
|
PIC18F25K20 |
PIC18F6585 |
PIC18F86J50(2)(4) |
|
PIC18F2610 |
PIC18F65J10(2)(4) |
PIC18F86J55(2)(4) |
|
PIC18F2620 |
PIC18F65J11(2)(4) |
PIC18F86J60(2)(4) |
|
PIC18F2680 |
PIC18F65J15(2)(4) |
PIC18F86J65(2)(4) |
|
PIC18F2682 |
PIC18F65J50(2)(4) |
PIC18F8720 |
|
PIC18F2685 |
PIC18F65J90(2)(4) |
PIC18F8722 |
|
PIC18F4220 |
PIC18F6620 |
PIC18F8723 |
|
PIC18F4221 |
PIC18F6621 |
PIC18F87J10(2)(4) |
|
PIC18F4320 |
PIC18F6622 |
PIC18F87J11(2)(4) |
|
PIC18F4321 |
PIC18F6627 |
PIC18F87J50(2)(4) |
|
PIC18F4331 |
PIC18F6628 |
PIC18F87J60(2)(4) |
|
PIC18F4410 |
PIC18F6680 |
PIC18F96J60(2)(4) |
|
PIC18F442 |
PIC18F66J10(2)(4) |
PIC18F96J65(2)(4) |
|
PIC18F4420 |
PIC18F66J11(2)(4) |
PIC18F97J60(2)(4) |
|
PIC18F4423 |
PIC18F66J15(2)(4) |
PIC18LF24J10(4) |
|
PIC18F4431 |
PIC18F66J16(2)(4) |
PIC18LF25J10(4) |
|
PIC18F4439 |
PIC18F66J50(2)(4) |
PIC18LF44J10(4) |
|
PIC18F4450 |
PIC18F66J55(2)(4) |
PIC18LF45J10(4) |
|
PIC18F4455 |
PIC18F66J60(2)(4) |
|
|
|
|
|
|
PIC24FJ128GA006(4) |
PIC24FJ192GB106(4) |
PIC24FJ48GA004(4) |
|
PIC24FJ128GA008(4) |
PIC24FJ192GB108(4) |
PIC24FJ64GA002(4) |
|
PIC24FJ128GA010(4) |
PIC24FJ192GB110(4) |
PIC24FJ64GA004(4) |
|
PIC24FJ128GA106(4) |
PIC24FJ256GA106(4) |
PIC24FJ64GA006(4) |
|
PIC24FJ128GA108(4) |
PIC24FJ256GA108(4) |
PIC24FJ64GA008(4) |
|
PIC24FJ128GA110(4) |
PIC24FJ256GA110(4) |
PIC24FJ64GA010(4) |
|
PIC24FJ128GB106(4) |
PIC24FJ256GB106(4) |
PIC24FJ64GB106(4) |
|
PIC24FJ128GB108(4) |
PIC24FJ256GB108(4) |
PIC24FJ64GB108(4) |
|
PIC24FJ128GB110(4) |
PIC24FJ256GB110(4) |
PIC24FJ64GB110(4) |
|
PIC24FJ16GA002(4) |
PIC24FJ32GA002(4) |
PIC24FJ96GA006(4) |
|
PIC24FJ16GA004(4) |
PIC24FJ32GA004(4) |
PIC24FJ96GA008(4) |
|
PIC24FJ192GA108(4) |
PIC24FJ48GA002(4) |
PIC24FJ96GA010(4) |
|
|
|
|
|
PIC24HJ128GP202(4) |
PIC24HJ12GP201(4) |
PIC24HJ64GP202(4) |
|
PIC24HJ128GP204(4) |
PIC24HJ12GP202(4) |
PIC24HJ64GP204(4) |
|
PIC24HJ128GP206(4) |
PIC24HJ16GP304(4) |
PIC24HJ64GP206(4) |
|
PIC24HJ128GP210(4) |
PIC24HJ256GP206(4) |
PIC24HJ64GP210(4) |
|
PIC24HJ128GP306(4) |
PIC24HJ256GP210(4) |
PIC24HJ64GP502(4) |
|
PIC24HJ128GP310(4) |
PIC24HJ256GP610(4) |
PIC24HJ64GP504(4) |
|
PIC24HJ128GP502(4) |
PIC24HJ32GP202(4) |
PIC24HJ64GP506(4) |
|
PIC24HJ128GP504(4) |
PIC24HJ32GP204(4) |
PIC24HJ64GP510(4) |
|
PIC24HJ128GP506(4) |
PIC24HJ32GP302(4) |
|
|
PIC24HJ128GP510(4) |
PIC24HJ32GP304(4) |
|
|
dsPIC30F1010 |
|
|
|
|
|
|
|
dsPIC33FJ06GS202(2)(4) |
|
|
|
dsPIC33FJ16GS502(2)(4) |
|
|
|
dsPIC33FJ16GS504(2)(4) |
|
|
|
|
|
|
|
MCV14A |
|
|
|
|
|
|
|
PIC12F519(1) |
|
|
|
|
|
|
|
PIC16F526(1) |
|
|
|
PIC16F726 |
|
|
|
PIC16F727 |
|
|
|
PIC16HV610(1) |
|
|
|
|
|
|
|
PIC18F13K50 |
|
|
|
PIC18F26K20 |
|
|
|
PIC18F46K20 |
|
|
|
|
|
|
|
PIC24FJ192GA106(4) |
|
|
|
PIC24FJ192GA110(4) |
|
|
|
|
|
|
|
PIC32MX320F032H |
PIC32MX340F256H |
PIC32MX440F256H |
|
PIC32MX320F064H |
PIC32MX360F256L |
PIC32MX460F256L |
|
PIC32MX320F128H |
PIC32MX360F512L |
PIC32MX460F512L |
|
PIC32MX320F128L |
PIC32MX440F128L |
|
|
dsPIC30F1010 |
dsPIC30F3014 |
dsPIC30F6011 |
|
dsPIC30F2010 |
dsPIC30F4011 |
dsPIC30F6011A |
|
dsPIC30F2011 |
dsPIC30F4012 |
dsPIC30F6012 |
|
dsPIC30F2012 |
dsPIC30F4013 |
dsPIC30F6012A |
|
dsPIC30F2020 |
dsPIC30F5011 |
dsPIC30F6013 |
|
dsPIC30F2023 |
dsPIC30F5013 |
dsPIC30F6013A |
|
dsPIC30F3010 |
dsPIC30F5015 |
dsPIC30F6014 |
|
dsPIC30F3011 |
dsPIC30F5016 |
dsPIC30F6014A |
|
dsPIC30F3012 |
dsPIC30F6010 |
dsPIC30F6015 |
|
dsPIC30F3013 |
dsPIC30F6010A |
|
|
|
|
|
|
dsPIC33FJ128GP202(4) |
dsPIC33FJ12GP201(4) |
dsPIC33FJ64GP202(4) |
|
dsPIC33FJ128GP204(4) |
dsPIC33FJ12GP202(4) |
dsPIC33FJ64GP204(4) |
|
dsPIC33FJ128GP206(4) |
dsPIC33FJ12MC201(4) |
dsPIC33FJ64GP206(4) |
|
dsPIC33FJ128GP306(4) |
dsPIC33FJ12MC202(4) |
dsPIC33FJ64GP306(4) |
|
dsPIC33FJ128GP310(4) |
dsPIC33FJ16GP304(4) |
dsPIC33FJ64GP310(4) |
|
dsPIC33FJ128GP706(4) |
dsPIC33FJ16MC304(4) |
dsPIC33FJ64GP706(4) |
|
dsPIC33FJ128GP708(4) |
dsPIC33FJ256GP506(4) |
dsPIC33FJ64GP708(4) |
|
dsPIC33FJ128GP710(4) |
dsPIC33FJ256GP510(4) |
dsPIC33FJ64GP710(4) |
|
dsPIC33FJ128GP802(4) |
dsPIC33FJ256GP710(4) |
dsPIC33FJ64GP802(4) |
|
dsPIC33FJ128GP804(4) |
dsPIC33FJ256MC510(4) |
dsPIC33FJ64GP804(4) |
|
dsPIC33FJ128MC202(4) |
dsPIC33FJ256MC710(4) |
dsPIC33FJ64MC202(4) |
|
dsPIC33FJ128MC204(4) |
dsPIC33FJ32GP202(4) |
dsPIC33FJ64MC204(4) |
|
dsPIC33FJ128MC506(4) |
dsPIC33FJ32GP204(4) |
dsPIC33FJ64MC506(4) |
|
dsPIC33FJ128MC510(4) |
dsPIC33FJ32GP302(4) |
dsPIC33FJ64MC508(4) |
|
dsPIC33FJ128MC706(4) |
dsPIC33FJ32GP304(4) |
dsPIC33FJ64MC510(4) |
|
dsPIC33FJ128MC708(4) |
dsPIC33FJ32MC202(4) |
dsPIC33FJ64MC706(4) |
|
dsPIC33FJ128MC710(4) |
dsPIC33FJ32MC204(4) |
dsPIC33FJ64MC710(4) |
|
dsPIC33FJ128MC802(4) |
dsPIC33FJ32MC302(4) |
dsPIC33FJ64MC802(4) |
|
dsPIC33FJ128MC804(4) |
dsPIC33FJ32MC304(4) |
dsPIC33FJ64MC804(4) |
|
|
|
|
|
MCV08A |
|
|
|
MCV14A |
|
|
|
MCV18A |
|
|
|
MCV28A |
|
|
|
|
|
|
|
PIC10F200(3) |
PIC10F204(3) |
PIC10F220(3) |
|
PIC10F202(3) |
PIC10F206(3) |
PIC10F222(3) |
|
|
|
|
|
PIC12F508 |
PIC12F615 |
PIC12HV609 |
|
PIC12F509 |
PIC12F629 |
PIC12HV615 |
|
PIC12F510 |
PIC12F635 |
rfPIC12F675K |
|
PIC12F519 |
PIC12F675 |
|
|
PIC12F609 |
PIC12F683 |
|
|
|
|
|
|
PIC16F505 |
PIC16F689 |
PIC16F873A |
|
PIC16F506 |
PIC16F690 |
PIC16F874 |
|
PIC16F526 |
PIC16F716 |
PIC16F874A |
|
PIC16F54 |
PIC16F72 |
PIC16F876 |
|
PIC16F57 |
PIC16F73 |
PIC16F876A |
|
PIC16F59 |
PIC16F737 |
PIC16F877 |
|
PIC16F610 |
PIC16F74 |
PIC16F877A |
|
PIC16F616 |
PIC16F747 |
PIC16F88 |
|
PIC16F627 |
PIC16F76 |
PIC16F882 |
|
PIC16F627A |
PIC16F767 |
PIC16F883 |
|
PIC16F628 |
PIC16F77 |
PIC16F884 |
|
PIC16F628A |
PIC16F777 |
PIC16F886 |
|
PIC16F630 |
PIC16F785 |
PIC16F887 |
|
PIC16F631 |
PIC16F818 |
PIC16F913 |
|
PIC16F636 |
PIC16F819 |
PIC16F914 |
|
PIC16F639 |
PIC16F83 |
PIC16F916 |
|
PIC16F648A |
PIC16F84 |
PIC16F917 |
|
PIC16F676 |
PIC16F84A |
PIC16F946 |
|
PIC16F677 |
PIC16F87 |
PIC16HV610 |
|
PIC16F684 |
PIC16F870 |
PIC16HV616 |
|
PIC16F685 |
PIC16F871 |
PIC16HV785 |
|
PIC16F687 |
PIC16F872 |
|
|
PIC16F688 |
PIC16F873 |
|
|
|
|
|
|
PIC18C601 |
PIC18F4458 |
PIC18F6720 |
|
PIC18C801 |
PIC18F448 |
PIC18F6722 |
|
PIC18F1220 |
PIC18F4480 |
PIC18F6723 |
|
PIC18F1230 |
PIC18F44J10(4) |
PIC18F67J10(4) |
|
PIC18F1320 |
PIC18F44K20 |
PIC18F67J11(4) |
|
PIC18F1330 |
PIC18F4510 |
PIC18F67J50(4) |
|
PIC18F2220 |
PIC18F4515 |
PIC18F67J60(4) |
|
PIC18F2221 |
PIC18F452 |
PIC18F8310 |
|
PIC18F2320 |
PIC18F4520 |
PIC18F8390 |
|
PIC18F2321 |
PIC18F4523 |
PIC18F8393 |
|
PIC18F2331 |
PIC18F4525 |
PIC18F83J11(4) |
|
PIC18F2410 |
PIC18F4539 |
PIC18F83J90(4) |
|
PIC18F242 |
PIC18F4550 |
PIC18F8410 |
|
PIC18F2420 |
PIC18F4553 |
PIC18F8490 |
|
PIC18F2423 |
PIC18F458 |
PIC18F8493 |
|
PIC18F2431 |
PIC18F4580 |
PIC18F84J11(4) |
|
PIC18F2439 |
PIC18F4585 |
PIC18F84J90(4) |
|
PIC18F2450 |
PIC18F45J10(4) |
PIC18F8520 |
|
PIC18F2455 |
PIC18F45K20 |
PIC18F8525 |
|
PIC18F2458 |
PIC18F4610 |
PIC18F8527 |
|
PIC18F248 |
PIC18F4620 |
PIC18F8585 |
|
PIC18F2480 |
PIC18F4680 |
PIC18F85J10(4) |
|
PIC18F24J10(4) |
PIC18F4685 |
PIC18F85J11(4) |
|
PIC18F24K20 |
PIC18F6310 |
PIC18F85J15(4) |
|
PIC18F2510 |
PIC18F6390 |
PIC18F85J50(4) |
|
PIC18F2515 |
PIC18F6393 |
PIC18F85J90(4) |
|
PIC18F252 |
PIC18F63J11(4) |
PIC18F8620 |
|
PIC18F2520 |
PIC18F63J90(4) |
PIC18F8621 |
|
PIC18F2523 |
PIC18F6410 |
PIC18F8622 |
|
PIC18F2525 |
PIC18F6490 |
PIC18F8627 |
|
PIC18F2539 |
PIC18F6493 |
PIC18F8628 |
|
PIC18F2550 |
PIC18F64J11(4) |
PIC18F8680 |
|
PIC18F2553 |
PIC18F64J90(4) |
PIC18F86J10(4) |
|
PIC18F258 |
PIC18F6520 |
PIC18F86J11(4) |
|
PIC18F2580 |
PIC18F6525 |
PIC18F86J15(4) |
|
PIC18F2585 |
PIC18F6527 |
PIC18F86J16(4) |
|
PIC18F25J10(4) |
PIC18F6585 |
PIC18F86J50(4) |
|
PIC18F25K20 |
PIC18F65J10(4) |
PIC18F86J55(4) |
|
PIC18F2610 |
PIC18F65J11(4) |
PIC18F86J60(4) |
|
PIC18F2620 |
PIC18F65J15(4) |
PIC18F86J65(4) |
|
PIC18F2680 |
PIC18F65J50(4) |
PIC18F8720 |
|
PIC18F2682 |
PIC18F65J90(4) |
PIC18F8722 |
|
PIC18F2685 |
PIC18F6620 |
PIC18F8723 |
|
PIC18F4220 |
PIC18F6621 |
PIC18F87J10(4) |
|
PIC18F4221 |
PIC18F6622 |
PIC18F87J11(4) |
|
PIC18F4320 |
PIC18F6627 |
PIC18F87J50(4) |
|
PIC18F4321 |
PIC18F6628 |
PIC18F87J60(4) |
|
PIC18F4331 |
PIC18F6680 |
PIC18F96J60(4) |
|
PIC18F4410 |
PIC18F66J10(4) |
PIC18F96J65(4) |
|
PIC18F442 |
PIC18F66J11(4) |
PIC18F97J60(4) |
|
PIC18F4420 |
PIC18F66J15(4) |
PIC18LF24J10(4) |
|
PIC18F4423 |
PIC18F66J16(4) |
PIC18LF25J10(4) |
|
PIC18F4431 |
PIC18F66J50(4) |
PIC18LF44J10(4) |
|
PIC18F4439 |
PIC18F66J55(4) |
PIC18LF45J10(4) |
|
PIC18F4450 |
PIC18F66J60(4) |
|
|
PIC18F4455 |
PIC18F66J65(4) |
|
|
|
|
|
|
PIC24FJ128GA006(4) |
PIC24FJ192GB106(4) |
PIC24FJ48GA004(4) |
|
PIC24FJ128GA008(4) |
PIC24FJ192GB108(4) |
PIC24FJ64GA002(4) |
|
PIC24FJ128GA010(4) |
PIC24FJ192GB110(4) |
PIC24FJ64GA004(4) |
|
PIC24FJ128GA106(4) |
PIC24FJ256GA106(4) |
PIC24FJ64GA006(4) |
|
PIC24FJ128GA108(4) |
PIC24FJ256GA108(4) |
PIC24FJ64GA008(4) |
|
PIC24FJ128GA110(4) |
PIC24FJ256GA110(4) |
PIC24FJ64GA010(4) |
|
PIC24FJ128GB106(4) |
PIC24FJ256GB106(4) |
PIC24FJ64GB106(4) |
|
PIC24FJ128GB108(4) |
PIC24FJ256GB108(4) |
PIC24FJ64GB108(4) |
|
PIC24FJ128GB110(4) |
PIC24FJ256GB110(4) |
PIC24FJ64GB110(4) |
|
PIC24FJ16GA002(4) |
PIC24FJ32GA002(4) |
PIC24FJ96GA006(4) |
|
PIC24FJ16GA004(4) |
PIC24FJ32GA004(4) |
PIC24FJ96GA008(4) |
|
PIC24FJ192GA108(4) |
PIC24FJ48GA002(4) |
PIC24FJ96GA010(4) |
|
|
|
|
|
PIC24HJ128GP202(4) |
PIC24HJ12GP201(4) |
PIC24HJ64GP202(4) |
|
PIC24HJ128GP204(4) |
PIC24HJ12GP202(4) |
PIC24HJ64GP204(4) |
|
PIC24HJ128GP206(4) |
PIC24HJ16GP304(4) |
PIC24HJ64GP206(4) |
|
PIC24HJ128GP210(4) |
PIC24HJ256GP206(4) |
PIC24HJ64GP210(4) |
|
PIC24HJ128GP306(4) |
PIC24HJ256GP210(4) |
PIC24HJ64GP502(4) |
|
PIC24HJ128GP310(4) |
PIC24HJ256GP610(4) |
PIC24HJ64GP504(4) |
|
PIC24HJ128GP502(4) |
PIC24HJ32GP202(4) |
PIC24HJ64GP506(4) |
|
PIC24HJ128GP504(4) |
PIC24HJ32GP204(4) |
PIC24HJ64GP510(4) |
|
PIC24HJ128GP506(4) |
PIC24HJ32GP302(4) |
|
|
PIC24HJ128GP510(4) |
PIC24HJ32GP304(4) |
|
|
dsPIC33FJ06GS202(4) |
|
|
|
dsPIC33FJ16GS502(4) |
|
|
|
dsPIC33FJ16GS504(4) |
|
|
|
|
|
|
|
rfPIC12F675F |
|
|
|
rfPIC12F675H |
|
|
|
|
|
|
|
PIC16F726 |
|
|
|
PIC16F727 |
|
|
|
|
|
|
|
PIC18F14K50 |
|
|
|
PIC18F26K20 |
|
|
|
PIC18F4682 |
|
|
|
PIC18F46K20 |
|
|
|
|
|
|
|
PIC24FJ192GA106(4) |
|
|
|
PIC24FJ192GA110(4) |
|
|
|
|
|
|
|
PIC32MX320F032H |
PIC32MX340F256H |
PIC32MX440F256H |
|
PIC32MX320F064H |
PIC32MX360F256L |
PIC32MX460F256L |
|
PIC32MX320F128H |
PIC32MX360F512L |
PIC32MX460F512L |
|
PIC32MX320F128L |
PIC32MX440F128L |
|
(1) Header interface board required. See Header Board Specification (DS51292), for a list of available headers by device number.
(2) Header interface board available, but not required. See Header Board Specification (DS51292) for a list of available headers by device number.
(3) PIC10F2XX Universal programmer adapter required (AC163020).
(4) Special device programming considerations apply to avoid damage to device. See section 9.
This tool has been tested using the following operating systems:
Windows® 2000 SP4, Windows XP SP2, and Windows Vista™ (32-Bit)* OSs
*64-bit Vista is not supported at this time.
IMPORTANT NOTICE: Beginning with MPLAB IDE v7.51, MPLAB IDE and MPLAB ICD 2 will no longer be tested on Windows 98 or Windows ME OSs. MPLAB IDE and MPLAB ICD 2 may continue to work under these operating systems, but their operation will no longer be verified through testing.
The following documents may be found on our website or MPLAB IDE CD-ROM:
· MPLAB ICD 2 Design Advisory (DS51566)
· Using MPLAB ICD 2 Poster (DS51265)
· MPLAB ICD 2 User's Guide (DS51331)
· Header Specification (DS51292)
· Universal Programming Module Instruction Sheet (DS51280)
On-line help (Help>Topics) is also available for this tool:
· Debuggers>MPLAB ICD 2 - hlpMPLABICD2.chm
· SSR ICD2-198: 18F2221 - CCPCON2 is not updated in Watch Window.
· SSR ICD2-225: ID memory programming option is grayed out for the PIC32 devices even when manually select ranges is checked.
· SSR ICD2-226: MPLAB IDE should not allow the user to set power from ICD2 for the PIC32 devices.
· SSR ICD2-236: New information on ICD 2 connector is not correct in Help.
· SSR ICD2-238: Read operation fails after a verify operation.
· None.
Installation and setup instructions are dependent on your operating system. Open the appropriate file for your OS in a web browser and follow the instructions to install the driver(s).
Note: If you have accidentally installed the Windows OS default driver, these instructions will direct you to how to "clean" your system first before installing the correct driver(s).
Note: If you change USB ports/hubs, you will need to reinstall the drivers.
Win 2000/XP/Vista
C:\Program Files\Microchip\MPLAB
IDE\ICD2\Drivers\ddicd2.htm
IMPORTANT NOTICE: Beginning with MPLAB IDE v7.51, MPLAB IDE and MPLAB ICD 2 will no longer be tested on Windows 98 or Windows ME OSs. MPLAB IDE and MPLAB ICD 2 may continue to work under these operating systems, but their operation will no longer be verified through testing.
Win 98
C:\Program Files\Microchip\MPLAB
IDE\ICD2\Drivers\ddicd298.htm
Win ME
C:\Program Files\Microchip\MPLAB
IDE\ICD2\Drivers\ddicd2me.htm
NOTE: MPLAB ICD 2 must be powered BEFORE power is applied to the target application.
Serial (RS-232) connection to the PC:
Power supply required.
USB connection to the PC, target not powered from MPLAB ICD 2 or no target connected:
No power supply needed.
USB connection to the PC, target powered from MPLAB ICD 2:
Power supply required. (USB cannot power
both.)
Note: Plug in USB first, then power supply.
The MPLAB ICD 2 cannot be powered from the target board.
The MPLAB ICD 2 can provide 5 V and up to 200 mA to a target
if the ICD itself is powered by a power supply. (USB cannot power both.) This is
enabled by checking "Power target circuit from MPLAB ICD 2"
(Debugger>Settings, Power tab).
Note: Plug in
USB first, then power supply.
Note: The ICD headers need to be connected to a target board or else they may receive the ICD00083 debug error.
1. Power the MPLAB ICD 2. DO NOT power the target.
2. Start MPLAB IDE.
3. Under the Debugger menu of MPLAB IDE, click "Connect".
4. After establishing communications with the MPLAB ICD 2, select Debugger>Settings.
5. In the Settings dialog, click the Power tab and ensure that the check box for "Power target circuit from MPLAB ICD 2" is checked. Click OK.
6. Now you should be able to erase and program components with the MPLAB ICD 2.
1. Power the MPLAB ICD 2. DO NOT power the target.
2. Start MPLAB IDE.
3. Under the Debugger menu of MPLAB IDE, click "Connect".
4. After establishing communications with the MPLAB ICD 2, select Debugger>Settings.
5. In the Settings dialog, click the Power tab and ensure that the check box for "Power target circuit from MPLAB ICD 2" is NOT checked. Click OK.
6. Power the target system and then select Debugger>Connect.
7. Now you should be able to erase and program components with the MPLAB ICD 2.
If any of the self tests on the Status tab of the Settings dialog do not say pass, you will not be able to erase and program your device. Exception: if Vpp says low, you may still be able to program if the voltage is more than the low value for the device programming range listed in the device programming spec.
Generally, failed self tests will require further troubleshooting.
See on-line help for more information.
There is a folder called \ICD2 that was copied into the MPLAB IDE installation directory. This folder has two files which can be used with the PICDEM™ 18R demo board (DM163006):
SRAM16.HEX - allows program download to the static RAM
29F16016.HEX - allows program download to the flash memory
When using PICDEM 18R, you must use one of the files above in the "Location of WriteProgramWord and EraseProgramMemory" dialog on the MPLAB ICD 2 Advanced Dialog. Also, you must remember to do an erase before programming as this is not done automatically.
For your own design, which probably has different programming algorithms for the memory on your target, you must substitute your own memory read/write routine in order for the MPLAB ICD 2 to download code. See the PICDEM 18R documentation for information on writing your custom routines. These code routines will be used to program your memory and care must be taken to ensure they are relocatable and comply with the format used in the included source files.
The Programming Specifications for PIC18FXXJ MCUs, PIC24F MCUs, and dsPIC33F DSCs indicate that when programming these devices, bulk erase commands should be issued between successive programming operations, i.e., erase, then program, then erase, then program, etc. Therefore, Microchip advises against multiple-stage programming sessions which may damage the device. For example, you should NOT do the following with these parts:
· load and program a particular hex file
· load a second hex file
· disable erase-all-before-programming
· specify an address sub-range
· program the device
The Programming Specifications for PIC18FXXJ MCUs indicate that, this process technology is not 12-volt tolerant. Ensure that external protection for MCLR is in place, for example a zener diode, before proceeding to prevent any damage to your device.
For CodeGuard™ Security Devices
Several 16-bit devices allow customers to define up to 3 programming segments: Boot, Secure and General. The purpose is to allow a customer to place proprietary data (libraries, IP address, etc.) into a protected boot or secure segment. That customer may then transfer these preprogrammed devices to another customer who would use the unprotected general segments.
For more details on CodeGuard Security functionality, please refer to the CodeGuard Security reference manual for 16-bit devices (DS70180) and dsPIC33F/PIC24H and dsPIC30F device programming specifications found on our website.
To program the preprogrammed devices, MPLAB IDE v7.50 and above provides a Secure Segment tab on the Settings dialog, accessed under either the Programmer or Debugger menu. This tab contains the following options:
· Full Chip Erase/Program
· Segment Programming
· Boot, Secure & General Segments
· Secure,General Segments
· General Segment.
The programming function of this tool is now capable of identifying various device segments and their sizes upon connecting the device. Hence, these options allow you to selectively program the program memory segments and thus avoid accidental eraser of preprogrammed proprietary data (Libraries, IP, etc.)
For Non-CodeGuard Security Devices
When programming these devices, bulk erase commands should be issued between successive programming operations, i.e., erase, then program, then erase, then program, etc. Therefore, Microchip advises against multiple-stage programming sessions which may fail to verify. For example, you should NOT do the following sequence with these devices:
The following is a list of known problems. For information on common problems, error messages and limitations, please see Troubleshooting in the online help file for MPLAB ICD 2 (hlpMPLABICD2.chm).
· If you are using MPLAB ICD 2 with USB communications AND a power supply, plug in the USB first, then the power supply.
· If you have problems with serial communications, see the Troubleshooting section in the help file.
NOTE: You should have the FIFO disabled and hardware handshaking enabled on the PC COM port properties.
· Select Start>Settings>Control Panel
· Double-click on System to open "System Properties"
· Open the Device Manager and find your COM port under Ports
· Open the Communications Port Properties dialog for this port
· Under Port Settings, choose "Flow Control: Hardware" for hardware handshaking
· Open the Advanced Settings dialog and deselect Use FIFO buffers
· When first connecting to MPLAB ICD 2 using serial communications, the default COM port is COM1. If you are using the MPLAB ICD 2 on another COM port, Select Debugger>Settings, Communication tab to set the appropriate COM port. Subsequent connections should be established quickly.
· If you are having problems with ICD operation, please check the revision of your pod, found on the back of the unit. If the part number is 10-00319 R15 through R21 without an “ECO 3013” sticker, please contact your local Microchip FAE or sales office to return the unit for replacement.
· If you do not use the included USB or RS-232 cable, make sure the cable you do use is not longer than 6 feet or communication errors could result. For modular cable lengths, see on-line help.
· Do not plug both the USB cable and RS-232 cable into the MPLAB ICD 2 pod. This will cause errors. Choose one form of ICD-to-PC communication.
· For baseline devices, TRISIO and OPTION_REG appear in the watch window drop down list but are not available on the MPLAB ICD 2. No information will be displayed if either is selected.
· For dsPIC30F devices, you must provide power on your own board and not to use power from the ICD. The power (Vdd) provided from MPLAB ICD 2 to the target device is not sufficient for all programming operations of the dsPIC30F device family.
· Using the USB connection on a laptop PC with suspend mode enabled will lock up the MPLAB ICD 2 if suspend mode is entered. Unplug the USB cable from the MPLAB ICD 2 and then plug the cable back in to resume debugging. You may want to disable suspend mode while using the MPLAB ICD 2. From Control Panel, select Power Options and disable suspend mode.
· Care should be taken when programming the PLL. The PLL only changes when power is first applied to the chip. If you are programming the PLL for the first time, remove power from the PIC18Fxxxx part after programming and reapply for the PLL to be enabled. If you are reprogramming the device from PLL mode to another mode, first reprogram with PLL off, then remove power and reapply.
· If you have trouble when low voltage programming, add a pull-down 10k ohm resistor to RB5.
· Numbers in the start and end address boxes (Debugger>Settings, Program tab) must use the hex numbering convention (0x....).
· For PIC18F8720, MEMCON cannot be read if in a microcontroller mode. This is a silicon issue.
· If you are not able to enter debug mode when power-up timer is enabled for the following devices, please disable power-up timer during the debugging session. (If the final application firmware requires power-up timer enabled, please enable it after the debugging session is complete and program the part with the final application firmware.)
· PIC18F4620/4610/2620/2610
· PIC18F4680/2680/4681/2681
· PIC18F4520/4420/2520/2420
· PIC18F4550/2550/4455/2455
· PIC18F8490/8410/6490/6410/8390/8310/6390/6310
· PIC18F8722/8627/8622/8527/6722/6627/6622/6527
· PIC18F2525/4525
· For dsPIC30F device programming, the Universal Programming Module cannot be used due to the limited number of Vdd and Vss connections.
· Code Example CE020 for 16-bit controllers: During the programming sequence, PIC24F devices may be put into a run condition using MPLAB ICD 2. This can result in a verification failure if the code performs self write to either program memory or Data EE.
· On PIC16F88X devices it is necessary to pull the RB3/PGM pin low for ICSP programming. This is due to a silicon issue.
· When connecting the PIC16F818/819 to the latest MPLAB ICD2's (r3), the device may latch resulting in ICD2Warn0020: Invalid target device id (expected=0x27, read=0x0). A work around is to use a .1 uF capacitator on VPP to GND.
· Watch window – It will take 1 cycle for the watch window to update properly for PORTx registers. Use an instruction that reads the port such as ‘MOVFF PORTx, PORTx_copy’ before the breakpoint is reached. This affects the following devices:
PIC18F4620
PIC18F63J90
PIC18F64J90
PIC18F64J95
PIC18F65J95
PIC18F83J90
PIC18F84J90
PIC18F84J95
PIC18F85J90
PIC18F63J11
PIC18F64J11
PIC18F64J16
PIC18F65J11
PIC18F83J11
PIC18F84J11
PIC18F84J16
PIC18F85J11
· The low voltage devices, such as PIC18F/LFXXJXX, may result in ICD2Warn0020: Invalid target device id if not powered up correctly.
Work around:
· When using 16-bit headers (PIC24H/dsPIC33F/PIC24F) during a debug session with the MPLAB ICD 2 tool, do not disconnect power from the target device else the selected emulated device variant will be lost. If the variant is lost due to disconnecting power during a debug session, just re-program the user code into the device again to re-program and restore the selected variant.
· Newer devices with programming ranges of 10-12V may show higher than specified Vpp (13V) on older MPLAB ICD 2 pods (P/N numbers of 10-00319 or less) designed for a 12-14V range. This value is within device tolerance (13.5V) and should not cause an issue when debugging.
NOTE: Production programming using the MPLAB ICD 2 is not recommended.
SSR 20230: Programming or reading a code-protected EEPROM memory generates no messages by MPLAB IDE for MPLAB ICD 2 for a PIC12F675 device.
SSR 21163: Programmer function: Cannot program PIC16F87x devices in individual or in combinations of the memory areas without the entire device being automatically erased.
SSR 24354: Freeze peripherals on Halt is checked and grayed, but some peripherals do not freeze. This is a silicon issue.
SSR 26344: Below 4.5 V, MPLAB ICD 2 will not overprogram User ID's on these devices:
PIC12F635 PIC16F684 PIC16F689 PIC16F914
PIC12F683 PIC16F685 PIC16F690 PIC16F916
PIC16F636 PIC16F687 PIC16F785 PIC16F917
PIC16F639 PIC16F688 PIC16F913 PIC16F946
SSR 28323: dsPIC33FJ128MC706 - Getting ICD0083: Debug: Unable to enter debug mode when running under LPRC mode.
SSR 29399: MPLAB ICD2 fail to program/verify the PIC24FJ128GA010 device when user code does run time flash erase /write operation.It appears the device is executing code before the full programming cycle is complete.
SSR ICD2-18: Freeze peripherals on Halt is checked and greyed, but Timers act as if Freeze is off - PIC16F684/16F688
SSRs ICD2-37, ICD2-72, ICD2-81, ICD2-82: As a general comment on these issues, some devices may not be able to enter debug mode at 32 kHz speed.
SSR ICD2-53: For the PIC16F630/676, the MPLAB ICD 2 does not maintain the band gap information which is in the configuration bits on these devices.
SSR ICD2-57: dsPIC33FJ128MC706 - Getting ICD0083: Debug: Unable to enter debug mode when running under LPRC mode.
SSR ICD2-81 MPLAB ICD 2 fails to program/verify the PIC24FJ128GA010 device when user code does runtime flash erase /write operation. It appears the device is executing code before the full programming cycle is complete.
SSR ICD2-82: User is not able to enter debug mode with any of the INTRC configuration bit options selected for PIC18F66J15.
SSR ICD2-109: When connecting the PIC16F818/819 to the latest MPLAB ICD 2’s (r3), the device may latch resulting in ICD2Warn0020: Invalid target device id (expected=0x27, read=0x0). To work around the issue, reduce the cable length to less than 6 inches. Also, if AC162049 is being used, remove the R1 pull-up resistor. Some devices require that a .1uF bypass capacitor be placed from the Vdd pin to the Vss pin of the device to successfully program the device. If programming failures still arise, try increasing this value incrementally to a maximum of 10uF.
SSR ICD2-111: Self test for MPLAB ICD 2 passes despite the target board is powered down for 30F1010/2020/2023 devices.
SSR ICD2-145: Known limitation: Debugging user code is not possible above 11 MHz when in 'EC' oscillator mode. The following devices are supported by this header: PIC12F609, PIC12F615, PIC16F610, PIC16F616, PIC12HV609, PIC12HV615, PIC16HV610, and PIC16HV616 These devices do not have debug capability by themselves so the header must be used to debug user code.
SSR ICD2-147: ICD2 fails to erase the 16f819 device when " Allow ICD2 to select memories and ranges is selected".
SSR ICD2-155: USB hub may be interfering with MPLAB ICD 2 tool with regards to debugging.
SSR ICD2-181: MPLAB ICD 2 as debugger fails to program the PIC16F876A at 3.3 V.
SSR ICD2-194: MPLAB ICD 2 reports a "Target not in debug mode error" when programming a 18Fxxkxx device using 64MHz EC mode.
SSR ICD2-220: Some family of devices require Power-up timer enabled to enter debug mode. See 12.2, General Issues section.
SSR ICD2-250: MPLAB ICD 2 reports a runtime error upon releasing a PIC32MX device from reset.
SSR ICD2-251: User can only set three breakpoints for the PIC32MX devices.
SSR ICD2-252: Blank check fails for the PIC32MX340F256H devices post erase using MPLAB ICD 2 as a programmer.
SSR ICD2-253: Reading a code protected PIC32MX device causes the read cycle to hang in a loop.
SSR MPLAB-1233: With MPLAB ICD 2 debugging a PIC18F66J65, the number of breakpoints being used always reads 0 on the Device Debug Resource toolbar.
· If you modify Program Memory, you must reprogram the device.
· When running in debug mode, selecting Debugger>Reset resets the program, goes to the zero location, and halts. The program does not automatically re-run.
· The following applies to all devices except for Extended PIC18F Devices V2:
- While single stepping, the MPLAB ICD 2 will not respond to interrupts.
- The SLEEP instruction cannot be used when debugging.
- The WDT cannot be used when debugging.
· An exception to the single step SLEEP and WDT in the above notes:
· Extended PIC18F Devices V2 will allow the user to interrupt while single stepping, use SLEEP, use WDT. Please see MPLAB ICD2 help for details.
· USB hubs must be powered.
· When working with PIC18XXXX parts, debugging speed is improved (breakpoints, single-step, etc.) if the General Purpose File Register Window is closed. You can put any registers that need to be monitored into a Watch Window, or view Special Function Registers in the SFR Window. MPLAB IDE updates information in visible sections of windows only, unless otherwise specified. Therefore, the smaller the visible area, the faster the updates and debugging speed.
· For PIC18Fxx20 devices, you must connect the AVDD and AVSS pins for the devices to program.
· Make sure that table reads/writes are not code protected.
· In low voltage mode, bulk erase will not erase code protect bits.
· MPLAB ICD 2, by design, has limited debug capabilities when compared with an emulator. This is a price/feature trade-off. If you need more complex debugging capabilities, the MPLAB ICE 2000 for PIC MCU device emulation and the MPLAB ICE 4000 for PIC18 MCU and dsPIC DSC device emulation are suggested.
· When using a 32 kHz crystal, you may receive the message "Target not in debug mode". Perform a reconnect to enter debug mode.
· MPLAB ICD 2 has different OS's for different part families. The ICD will, by default, automatically download the correct OS as necessary.
· It is possible to turn off the automatic download feature in Settings>Status. You will then be asked in a dialog if you wish to download the OS. Disabling the automatic download feature is NOT RECOMMENDED. Serious errors may occur if your OS is not correct for your selected device. It is recommended that you download the MPLAB ICD 2 firmware that was packaged with the version of MPLAB IDE being used on your system.
1.
Analog pins:
If MPLAB ICD 2 is selected as a debugger, it initializes
all the A/D input pins - AN0 through AN31 pins - as "digital" pins, by setting
all bits in the ADPCFG register (dsPIC30F) or AD1PCFGL and AD2PCFGL registers
(dsPIC33F/PIC24H).
For example, if EMUD3 and EMUC3 are used as the debug pins on a dsPIC30F2010 device, then bits 0 and 1 of the ADPCFG register must remain set at all times. Similarly, if EMUD and EMUC are used as the debug pins on a dsPIC30F5011 device, then bits 6 and 7 of the ADPCFG register (or AD1PCFGL and AD2PCFGL registers) must remain set at all times. In such cases, you must also take proper precaution to isolate the application circuitry from the corresponding A/D pins during debugging.
For example, if AN4 and AN5 are required as analog input pins, then bits 4 and 5 of the ADPCFG register must be cleared.
2. After programming a device, you must perform a Processor Reset. This can be done either by selecting the Debugger>Reset>Processor Reset command, pressing the <F6> hotkey or clicking on the Processor Reset button. This ensures that the device oscillator is active before the program is run or debugging operations are performed.
3.
User RAM Usage:
You must not use the following memory region while
using MPLAB ICD 2; 0x800 - 0x84F (i.e., the first 80 bytes of RAM). If the ICD
is to be used for a particular project, on the Project Manager toolbar select
"Debug" from the Build Configurations drop-down list.
4. File Registers / Special Function Registers / Watch window:
5.
Programming Range:
On enabling MPLAB ICD 2, the Program End Address
(Debugger>Settings) is automatically set as low as possible
based on the Program Memory usage of each MPLAB IDE project. This helps minimize
the programming time.
6.
SLEEP, IDLE, WDT, Clock Switching:
For dsPIC devices, debug operations
can be executed on programs which use SLEEP or IDLE mode, Watchdog Timer, and/or
Clock Switching.
7.
Debug during SLEEP or IDLE Mode:
When the device is in SLEEP and IDLE
mode and a Halt command is issued, MPLAB ICD 2 will wake up the device and halt
execution on the instruction immediately following the PWRSAV instruction.
8. Interrupts:
9.
Break Point Behavior:
If a break point is set on an instruction that
follows a taken branch, the Breakpoint will be triggered even though the branch
went elsewhere.
10.
Break Point Behavior and Skidding:
It is possible that a breakpoint
halt will exhibit program memory skidding in that the execution stops N
instructions after reaching the breakpoint. The following definitions are
provided and referred to:
Break Point Behavior:
11. The CAN module, unlike the other peripherals, does not get frozen in the following situations:
For example, if you set a Breakpoint and run to it, the CAN module continues to run in the background, and it may seem that data transmissions and receptions have completed immediately.
12.
DISICNT register:
In five dsPIC30F devices (dsPIC30F6010,
dsPIC30F6011, dsPIC30F6012, dsPIC30F6013 and dsPIC30F6014), since the DISICNT
register continues to decrement even when the device is halted by the debugger,
the DISICNT value will always be seen as 0x0000 in the Watch, SFR and File
Registers windows. To monitor the DISICNT value, add code to copy the DISICNT
register contents to a W register or memory location and monitor the value of
the corresponding W register or memory location in the Watch, SFR or File
Registers window.
13.
ADC Module Disable bit in
PMD1 register:
The user
application must not set the ADCMD bit (dsPIC30F) or AD1MD bit (dsPIC33F/PIC24H)
in the PMD1 register. This would lead to incorrect ICD2 operation..
14.
Single-stepping a DO loop:
In five dsPIC30F devices (dsPIC30F6010,
dsPIC30F6011, dsPIC30F6012, dsPIC30F6013 and dsPIC30F6014), single-stepping
through a DO loop in dsPIC30F assembly code results in the loop getting executed
one less time than expected.
15.
Number of Breakpoints:
|
Number of Breakpoints Supported |
Devices |
|
1 |
dsPIC30F2010, 2011, 2012, 3010, 3011, 3012, 3013, 3014, 4013 |
|
2 |
dsPIC30F1010, 2020, 2023, 4011, 4012, 5011, 5013, 5015, 5016, 6010, 6010A, 6011, 6011A, 6012, 6012A, 6013, 6013A, 6014, 6014A, 6015 |
|
6 |
All dsPIC33F and PIC24H. |
16.
Pass Counter feature in Advanced Breakpoints:
For a specified Pass
count of 'N', the code will break after 'N+1' occurrences of the breakpoint
instead of 'N' occurrences.
17. If you need to use the Fail-Safe Clock Monitor feature on a dsPIC device when using the MPLAB ICD 2 for debugging your application, a Watchdog Timer Device Reset will occur, even if the Watchdog Timer has not been explicitly enabled in the application. This will also occur with any invocation of the LPRC clock source whether by configuration bytes or clock switching to the LPRC at run time will enable the Watchdog Timer. Any action that causes the LPRC clock source to become and/or remain active after the PWRT (Power-up Timer) expires will enable and cause a WDT countdown. To work around this issue, use the "CLRWDT" instruction in the main loop of your application code. This will ensure that the Watchdog Timer gets cleared before it causes the device to reset.
18. The UART module UxRXREG register on dsPIC33F devices and certain dsPIC30F devices (dsPIC30F1010 and dsPIC30F202x) may show incorrect values in debug mode. Investigating the UxRXREG register in debug mode could result in the application reading the wrong value from this register on exiting the debug mode. To avoid this condition, do not set breakpoint or step through code that reads the UxRXREG register. Also avoid setting a watch on the UxRXREG register. Alternatively, set up the application to complete reading the UxRXREG register into user application memory variables. Set a watch on or debug these variables to observe the UxRXREG register.
The Universal Programming Module (UPM) allows the MPLAB ICD 2 to be used as a device programmer for supported product DIP packages.
In-Circuit Serial Programming (ICSP) signals from the MPLAB ICD 2 are routed to seven wires soldered to the UPM at J3.
Vpp - Program Power
Vdd - Power
Vdd - Power
GND - Ground
GND - Ground
PGD - Program Data
PGC - Program Clock
You then jumper these wires to the appropriate pins of the 40-pin header, comprised of pins 1-20 and pins 21-40, which correspond to the pins of the ZIF socket (U1). For information onwhich pins to jumper, please refer to the programming specification for the device you will be programming.
Devices should be aligned to the top of the ZIF socket (pin 1 of all devices should be aligned to pin 1 of the ZIF socket). Refer to the device's data sheet for pinouts.
Both programming specifications and data sheets may be found on our website or on the MPLAB IDE CD-ROM.
Make sure that the programmer options are correct for your target device.
· Make sure the MPLAB ICD 2 is connected (Programmer>Connect).
· Select Programmer>Settings and select the Power tab.
· Check the "Power target circuit from MPLAB ICD 2" box, and press the Apply button. Ensure that Target Vdd is at least 4.5v (press the Update button if necessary)
· Select the Program tab of the ICD Programmer Properties dialog box. Configure your target device as desired. Press OK when done.
Programmer operations are now available. Insert the device to be programmed into the UPM ZIF socket and connect the signals wires per the previous section.
Due to the built-in in-circuit debugging capability of ICD devices, and the ICSP function offered by the Debugger, the MPLAB ICD 2 uses on-chip resources when debugging, i.e., some device resources are reserved for use by MPLAB ICD 2.
Refer to the on-line help for the most up-to-date list of resources used by the MPLAB ICD 2.