1

Im new in PIC world. I purchased few PIC devices, PicKit 3 and now im working on first circuit. I accidently ordered SSOP package and I can't just test it on breadboard - I have to make PCB. I stuck on programming interface.

PIC18F25k50 which im using has:

Single-Supply In-Circuit Serial Programming (ICSP™) via Two Pins

Is this turned on by default?

Can I program new virgin device by 2 pins (and GND) connected to PicKit3?

I couldn't find anything about this in datasheet and PICKit manual, however these are big documents, maybe I missed it.

I also tried to ask about this on Microchip forums, but I created 3 diffrent threads and they are waiting for moderator acceptance for 3 days...

Nick Alexeev
  • 37,739
  • 17
  • 97
  • 230
Kamil
  • 5,926
  • 9
  • 43
  • 58

2 Answers2

3

Can I program new virgin device by 2 pins (and GND) connected to PicKit3?

No, you have to have 5 pins. Absolute minimum = 5 pins.

Power,ground,clk,data,mclr.

Programmers typically want to see power whether or not power is supplied by device.

Erik Friesen
  • 1,851
  • 1
  • 11
  • 21
0

Yes, this function is enabled by default. When the programmer applies a programming voltage, the programming functionality of these pins are asserted automatically and de-asserted when done. Depending on your design, any regular I/O connected to the ICSP CLK/DATA pins of the microcontroller will get those pulses as well and you need to design around that. If they're sensitive to those pulses then you may have to shift them to other pins or put in some sort of transmission gate that disconnects those lines when it's being programmed.

You're also not SOL in terms of breadboarding a SSOP/SOIC. You can buy a little breakout board like this one on Sparkfun. They're available for plenty of other packages too. You solder the chip and rows of pins onto it and you can drop it right into your breadboard.

Since you're using standard PICKIT, be sure to disable low voltage programming in the configuration flags of your program. That's not critical to operation but I've had weird things happen with the microcontroller when it was left enabled.

BB ON
  • 2,296
  • 20
  • 26
  • Wait wait, what programming voltage? I want to program without MCLR (Vpp). Missunderstanding? – Kamil May 03 '14 at 01:15
  • The programmer connects to Pin 1 of the 18F2550. This pin should be pulled up to 5V through a resistor to prevent accidental resets. The programmer connects to the microcontroller directly at the pin, which applies 14V to tell the microcontroller it's time to program. – BB ON May 03 '14 at 01:19
  • I can buy another PIC in price of that breakout board :) And i can make 50 of them in 2 hours with my laser printer and iron. I have all technology :) Just don't want to waste PIC on that, I will build whole SMD device instead. – Kamil May 03 '14 at 01:19
  • So what is the point of "Single-Supply In-Circuit Serial Programming (ICSP™) via Two Pins", if I have to connect MCLR to PicKit anyway? Thats 3-rd pin. Ground is 4-th... What kind of "Two Pins" programming is this? :) – Kamil May 03 '14 at 01:21
  • I think they mean "two I/O pin" rather ambiguously. There's no way to avoid a connection to MCLR or GND/VDD. – BB ON May 03 '14 at 01:32
  • It was 2 I/O pin anyway. I thought thats something diffrent than standard PIC programming... – Kamil May 03 '14 at 01:34