• Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Direct RS232 Programming vs ICSP (and others)

Not open for further replies.


New Member
I'll start off by pointing out this thread:


The second post filled me in a bit, but I'm still unsure about some things.

Ok, basically I want to understand the differences in programming methods. The methods I'm aware of are:

Direct Tx/Rx RS232 via a MAX232 or similar IC.
USB - I assume this can be done...?
Out of circuit parallel - I think. I've never seen it done but I believe this is how older PICs are programmed. Am I right about this?

So basically, my end product will be a unit with both RS232 and ethernet on the back. Ethernet connection will probably be done via a Microchip ENC28J60.

I want to be able to program this unit via RS232, and preferably also via ethernet. At the moment I'm not too worried about the actual programming and how to do it, I'm still in the circuit design stages and seeing what methods are possible.

The above link from what I understand tells me that both methods are possible, however RS232 programming needs something to be on the PIC first.

So my main question is, can I develop a product, and just plug the RS232 cable in (via a MAX232) to the Tx/Rx and program it from scratch, or do I need some sort of program to be on there first? If not, would I simply use ICSP for the first time and then use the RS232 port on the back of my unit for upgrades? Simply what I'm after is a method where the end user can upgrade the firmware via RS232 (such as on some DSL modems, set top boxes, etc).

Here's another similar question:
In the same unit, I'm going to have multiple PICs connected via I2C. If one is set up as a master (the one mentioned above) with RS232 and ethernet, could all the others "piggy-back" off this and become programming slaves? What I'm hoping I could do is eventually have a simple firmware file that could upgrade all the PICs via the one master PIC, over I2C. Is this even possible? As mentioned above, programming would be done by RS232, and hopefully ethernet (probably via browser, just like upgrading a DSL modem).

Thanks all! :)
Not open for further replies.

Latest threads

EE World Online Articles