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 CCS Technical Support

Programming Multiple PICs

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



Joined: 23 Jun 2011
Posts: 31
Location: UK

View user's profile Send private message

Programming Multiple PICs
PostPosted: Fri Dec 05, 2014 6:19 am     Reply with quote

Hi Guys,

I've a project which requires the use of multiple PICs (18F46k22 and PIC16F688) on the same PCB. I need the PCB to be as small as possible, but don't want to have to provide a programming header for each PIC as this takes up too much board space.

I also need the ability to program in circuit for future firmware upgrades.

Has anyone else come up with a solution to this problem as PICs don't have a JTAG programming interface do they?

Thanks,


Tom
temtronic



Joined: 01 Jul 2010
Posts: 9221
Location: Greensville,Ontario

View user's profile Send private message

PostPosted: Fri Dec 05, 2014 6:36 am     Reply with quote

Off the top of my head...
Add a 'programming director PIC' to the board.
This PIC connects to the outside world,either via serial (aka bootloader) or ICSP. It's program decides which PIC on the board gets the 'update'.

I've only had 1/2 a coffee but it seems possible, similar to a 'router' or PBX, in essence this PIC is nothing more than a digital switch connecting a PIC to the 'outside' world.

food for thought

Jay
Tom Jetland



Joined: 23 Jun 2011
Posts: 31
Location: UK

View user's profile Send private message

PostPosted: Fri Dec 05, 2014 6:40 am     Reply with quote

Interesting solution temtronic - thanks.

Hope the weather isn't too bad where you are? It's just cold and wet in old Blighty where I am.


Tom
temtronic



Joined: 01 Jul 2010
Posts: 9221
Location: Greensville,Ontario

View user's profile Send private message

PostPosted: Fri Dec 05, 2014 7:56 am     Reply with quote

It's about the same here, 0*C and freezing rain later(when you're sleeping), lousy to drive in , so great excuse to get some PICs and nRF2401s 'up and running' !
Depending on the number of PICs you have onboard, even a modest size PIC should work as the 'download director', perhaps another 688 ?

cheers
Jay
Tom Jetland



Joined: 23 Jun 2011
Posts: 31
Location: UK

View user's profile Send private message

PostPosted: Fri Dec 05, 2014 9:39 am     Reply with quote

Thanks Jay,

Don't get too cold.


Tom
Gabriel



Joined: 03 Aug 2009
Posts: 1067
Location: Panama

View user's profile Send private message

PostPosted: Fri Dec 05, 2014 9:42 am     Reply with quote

If its a one off project, why not just put Chip Sockets and program each of the smaller PICs off board manually and include a programing header for the main pic... Since the smaller PICs I assume will have simpler tasks, they should (IMO) require less updates thus the manual programming would be less of a hassle.

Kind regards,
G.
_________________
CCS PCM 5.078 & CCS PCH 5.093
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: Sat Dec 06, 2014 9:11 am     Reply with quote

For situations where I couldn't socket the chip or absolutely didn't have room for an ICSP header ( I use a 5-pin 2mm ), I have used a programming test clip. Here is a link to an example if you don't know what that is:

http://www.pomonaelectronics.com/pdf/d5250-54_5437_1_01.pdf

You can find a lot of them on eBay.
_________________
Jürgen
www.jgscraft.com
Ttelmah



Joined: 11 Mar 2010
Posts: 19498

View user's profile Send private message

PostPosted: Sat Dec 06, 2014 1:21 pm     Reply with quote

As a comment, why not use a bootloader on the PIC's. Easy to modify a version with an 'address' , then only a serial connection needed on the board.
asmboy



Joined: 20 Nov 2007
Posts: 2128
Location: albany ny

View user's profile Send private message AIM Address

PostPosted: Sun Dec 07, 2014 8:13 am     Reply with quote

you do not mention is if you have experience in designing for ICSP.

if not - some key points:

http://ww1.microchip.com/downloads/en/DeviceDoc/30277d.pdf


1- be sure you have effective isolation for the PIC program data and clock pins from your application circuit - or the ability to isolate them during the PGM operation.

2- isolation for the Vdd connection from the rest of your circuitry during the program operation.

3- a clean diode isolated way to apply the Vprog to the MCLR pin.

having multiple interconnected pics on one board only makes it more complicated. Not knowing your circuitry - i would be afraid of unwanted activation problems with the pics NOT being programmed -when using
such a common connection for Vdd in particular .

I am in the process right now of re-engineering an incrementally enhanced design that used an 18f4620 + 16F877a + 16f886 on a single board
with common logically combined serial communication - to add more features and use a single 18f8722 -- .....
have you thought of using a single much larger scale PIC of the 80 pin, dual EUSART type?
Tom Jetland



Joined: 23 Jun 2011
Posts: 31
Location: UK

View user's profile Send private message

PostPosted: Mon Dec 08, 2014 3:11 am     Reply with quote

As usual, some excellent advice guys. Thank you all. I will go away and look into it all... some bed time reading coming up :-)

Tom
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