I have a hex file to program a PIC24FJ256GB110 which I do with an ICD3 the revision code it returns from an older board is 00003 from the newer board 00004. This implies the silicon has changed. The code works in the 00003 board but not the 00004 board, as I am now fault finding the boards could this be a reason?
1 Answer
The usual place to find the difference between silicon revisions is the errata sheet. For example the following document seems to cover that device:
PIC24FJ256GB110 Family Silicon Errata and Data Sheet Clarification
It appears 03h was the code for revision A5 and the code 04h indicates revision A6. However unless I've missed something looking through that I can't see any known issues addressed or introduced with A6 that are different to A5.
Presumably though something was changed and it certainly could be your problem. It might be worth asking Microchip what was changed between revisions, I've found them helpful and responsive in the past even if you're a low-volume customer.
I am now fault finding the boards.
Could you explain what that means ? Will the ICD3 program the new 00004 board ? If so, can you trace the first__reset
instruction ? For that matter, can you see it in MPLAB ? i.e., what do you see on the screen when you finish programming the device ? Give us these details (and any others you think worthy). This just might be one where I know what to tell you. PeterJ's suggestion to contact Microchip Tech Support is a good one. I have never stumped those guys. They really do help in the weird ones. \$\endgroup\$