CCS C Software and Maintenance Offers
FAQFAQ   FAQForum Help   FAQOfficial CCS Support   SearchSearch  RegisterRegister 

ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

CCS does not monitor this forum on a regular basis.

Please do not post bug reports on this forum. Send them to support@ccsinfo.com

Sharing ICSP and data pins using an ICD-U64 ...

 
Post new topic   Reply to topic    CCS Forum Index -> General CCS C Discussion
View previous topic :: View next topic  
Author Message
gpsmikey



Joined: 16 Nov 2010
Posts: 588
Location: Kirkland, WA

View user's profile Send private message

Sharing ICSP and data pins using an ICD-U64 ...
PostPosted: Wed Feb 19, 2014 12:39 pm     Reply with quote

I thought I had seen a discussion here some time ago about various thoughts on sharing pins between the ICSP function as well as using them for their other functions (blinking LEDs or whatever). For the life of me I can't find that discussion now. Obviously with a 40 pin chip, it is usually easy to dedicate the two clock/data pins to the ICSP, but with an 8 pin chip, this becomes more difficult. I am kind of leaning in the direction of a dual inline 6 pin header where the ICSP connector plugs on when you want to program the chip and in normal mode, you just put jumpers across the data and clock pins to their intended function. I have my new ICD-U64 that I have yet to use with my new project and was trying to figure the best way to handle the ICSP (either with a 12F1822 or the 12F1501 chip).

Comments/suggestions?

mikey
_________________
mikey
-- you can't have too many gadgets or too much disk space !
old engineering saying: 1+1 = 3 for sufficiently large values of 1 or small values of 3
stinky



Joined: 05 Mar 2012
Posts: 99
Location: Central Illinois

View user's profile Send private message

PostPosted: Wed Feb 19, 2014 12:59 pm     Reply with quote

I've been burned on this before when I had an indicator LED on one of those pins.
Don't remember the exact conflict but it sunk enough current through the LED that it wasn't getting to logic level "HI."

Would also be mindful of any capacitance on those lines that could slow down the transition from LO to HI.
ezflyr



Joined: 25 Oct 2010
Posts: 1019
Location: Tewksbury, MA

View user's profile Send private message

PostPosted: Wed Feb 19, 2014 4:59 pm     Reply with quote

Hi,

I think this is an 'it depends' situation. I have a design that was seriously I/O limited, so I ended up sharing 'PGD' with another function, a beeper. The beeper is driven with an NPN transistor whose base has a 10K resistor to PGD. No issues, but the beeper does 'sing' a bit during program upload!

John
gpsmikey



Joined: 16 Nov 2010
Posts: 588
Location: Kirkland, WA

View user's profile Send private message

PostPosted: Wed Feb 19, 2014 5:57 pm     Reply with quote

I had been trying to find a schematic of the U64 - in their FAQ, they discuss briefly sharing those lines, but their only comment (which would never fly in a requirements document!! ) is "ensure the circuit has high impedance during the programming process" with no clue as to what "high impedance" really means - open circuit? More than 5k? More than 10k?. I did find references to other people who had issues (one guy in particular was driving FETS with the thought they were no load, not realizing that the gates were spec'd at 1000pf and that much capacitance killed the programming.) I did find one writeup that discussed the driver impedance issue that was helpful, but wanted to see what others were using here. If anyone is interested, I did find this helpful - http://www.embedinc.com/picprg/icsp.htm

There does indeed seem to be a somewhat less than clear definition of the interfaces (I have also seen the Microchip Appnote on ICSP).

mikey
_________________
mikey
-- you can't have too many gadgets or too much disk space !
old engineering saying: 1+1 = 3 for sufficiently large values of 1 or small values of 3
jgschmidt



Joined: 03 Dec 2008
Posts: 184
Location: Gresham, OR USA

View user's profile Send private message Send e-mail Visit poster's website

PostPosted: Thu Feb 20, 2014 11:48 am     Reply with quote

Yup! I've run into that since I use a lot of 8 and 14 pin devices. LEDs connected to PGD/PGC are generally OK as long as I have 1K or greater series resistor. These are also the pins I use for pushbuttons. I use a PicKit2 for programming and if I run into trouble, I can change the programming voltage. I have a production device where I goofed and didn't test programming a fully populated board. Programming fails at 5V but works fine at 4V.
_________________
Jürgen
www.jgscraft.com
gpsmikey



Joined: 16 Nov 2010
Posts: 588
Location: Kirkland, WA

View user's profile Send private message

PostPosted: Thu Feb 20, 2014 12:01 pm     Reply with quote

OK, I did hear back from CCS Support (I had asked them to clarify what "high impedance" meant in their connection information for the U-64). They say that 5k should be fine and also indicated that the drive lines for the data and clock have the same 33 ohm resistor in series with them that the PicKit2 uses. Sounds like 5k or above should be fine, but watch any capacitive loading (no FET gates etc.) connected directly to the lines. Does seem to be a bit of a gray area, but 5k should be OK. If I run into any issues, I'll post back with additional information.

Thanks to the others that posted their experiences and comments!

mikey
_________________
mikey
-- you can't have too many gadgets or too much disk space !
old engineering saying: 1+1 = 3 for sufficiently large values of 1 or small values of 3
Display posts from previous:   
Post new topic   Reply to topic    CCS Forum Index -> General CCS C Discussion All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group