Why Arduino use RX and Tx for programming

Hi everybody, i want to as why arduino use serial programming ?
Why doesnt use it icsp programming ?
What is the advantage of the rx tx pins ?

Thanks.

  1. It was designed that way.
  2. It can.
  3. No ISP programmer required and serial I/O shares the same connection.

Because most folks have a USB/Serial Connection. It makes it easy to program which was the original goal for the Arduino. Even artists were supposed to be able to use it! The PicAxe works the same way.

jremington:

  1. It was designed that way.
  2. It can.
  3. No ISP programmer required and serial I/O shares the same connection.

Kudos. Could hardly have put it better.

Or perhaps point 2 should read - it does. Which in fact illustrates the point perfectly. There is nothing to stop you programming it via ICSP whenever you want to. Just select that option in the IDE. Did you not see it?

Oh yes, you need an ICSP programmer to do it, but clearly everybody would have one of those, wouldn't they? :roll_eyes:


OK, if we look deeper into this, we could certainly ask in the case of the UNO and Mega which have the 16U2 interface chip, whether it could actually use this as an ICSP programmer and again, this is not only possible, but an actual option with published ways of doing it. This however would - or does - mean that more pins and functional components become involved and clash with usage in end-applications while you frequently also want the USB serial interface for connection with a "host" PC.

So that is not really practical in general, nor compatible with the previous and alternate Arduino versions such as the Nano.

See also almost identical thread what is that thing and why we have to it? - Microcontrollers - Arduino Forum