Tuesday 23 September 2014

pic - How to connect a dsPic30f2010 to pickit3 icsp


I recently bought a pickit3, I have a development board for the dsPIC30f but it the pickit3 doesn't seem to be able to read the chip. When I try to connect to the chip, I have the error:




Target Device ID (0x0) does not match expected Device ID



At first, I had an error that the pickit couldn't detect a voltage on vdd. I fixed it by either powering the dev board with an external power supply or powering the devboard using the pickit (with the advanced settings). Unfortunately, the pickit doesn't seem to be able to power the device with 5v and I have to set a voltage below 4.75v.


After that, I have the problem with the device id that can't be detected... Now, I'd like to put my pic on a breadboard with the simplest schematic to program it.


That's what I have so far:


schematic


simulate this circuit – Schematic created using CircuitLab


It's quite difficult for me to get around the datasheets of microchip. I couldn't find anywhere why a resistor and a capacitor are required on vpp.


I guess the schematic I made might be wrong as the VPP pin should be able to power up to 13v.


Also, as I never succeeded to get the pickit3 working yet, any idea how to verify if the voltage emitted from VPP is right. As I understand, in order to get the dspic in programming mode, the pickit has to provide between 12v and 13.5 volts on the vpp/mclr pin. I tried to measure VPP with my multi metter but I guess my multimetter is too slow to pick the voltage right away.



Edit: New schematic with decoupled vss/vdd and 100ohm on vpp added.



Answer




  1. You really can't expect things like this to work without proper bypass caps in place.

  2. Make sure you have all the Vdd, AVdd, Vss, and AVss pins connected, and of course a bypass cap for each Vdd and AVdd pin.

  3. Try putting 100 Ω in series with the PGC and PGD lines physically close to the PIC.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...