Does anyone know of a microcontroller which can be directly interfaced and programmed through a PC using serial/parallel/usb port? I am looking for a microcontroller which can be plugged into a breadboard and connected to a PC (without the programmer) to upload the bootloader and the program into it.


closed as not constructive by Leon Heller, Dave Tweed, Anindo Ghosh, Nick Alexeev, Brian Carlton Dec 10 '12 at 22:42

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance. If this question can be reworded to fit the rules in the help center, please edit the question.

  • \$\begingroup\$ If you don't want to use a programmer, how do you propose to connect it to your PC? \$\endgroup\$ – jippie Dec 8 '12 at 9:44
  • 3
    \$\begingroup\$ Why the aversion to a programmer? Programmers can be had for pretty low prices, under $10 for some designs, on sites like eBay... Or you could always breadboard one! \$\endgroup\$ – Anindo Ghosh Dec 8 '12 at 10:26
  • 2
    \$\begingroup\$ Maybe he's looking in the mirror and thinking, 'do I trust programmers? I mean really?' ;) \$\endgroup\$ – kenny Dec 8 '12 at 12:05
  • 1
    \$\begingroup\$ jippie: by plugging the uC in a bred board and connecting it with wires from DB9/ DB25/USBA connector Mosh: it is not a question of $10/20, rather finding out a simple technique kenny: maybe u dont have a mirror at your place :D \$\endgroup\$ – Arvind Gupta Dec 8 '12 at 13:26
  • \$\begingroup\$ Indeed, there's a lot to be said for a device which can have damaged software repaired by means of only a commodity pc and commodity interface cable, of the sort that you or your costumer can source anywhere in civilization. \$\endgroup\$ – Chris Stratton Dec 8 '12 at 15:11

Most (all?) NXP LPC ARM and Cortex microcontollers have a built-in serial bootloader. You will have to provide the UART signals to these chips at 3v3 (NOT at RS232 levels).

The LPC1343 also has a built-in USB bootloader: it can present itself as a drive, you simply copy your firmware to it. Sounds simple, but a bit tedious in practice if you want to do this often.

For most microcontrollers bootloader software is available (in most cases multiple versions). You (or someone else) must first download this software to the chip. In most (but not all) cases you will have to configure your application to work with the bootloader (not occupy the same addresses).

I once wrote a bootloader called ZPL (zero pin loader) that interfaced to its host only by its reset pin. It timed the interval between the resets, and decoded the bitstream from this timing. The reset signal was provided by a UART signal from the PC. IIRC this idea was not mine, I read (or at least thought I read) somewhere about a bootloader using only the reset pin. Once you know (or think that you know) that it is possible the reset is just work.


You can use any ATMega with serial or USB bootloader. Look at the Metaboard or Arduino serial.

  • \$\begingroup\$ Yes, but someone must first pre-load this for you. Though you can buy preprogrammed chips as catalog items from several suppliers. \$\endgroup\$ – Chris Stratton Dec 8 '12 at 15:13
  • \$\begingroup\$ AVR chips can be preloaded with boootloader very easily. You just need the RS-232, a couple of components (you can even get them from an old transistor radio) and some wires. \$\endgroup\$ – Volodymyr Smotesko Dec 9 '12 at 11:32
  • \$\begingroup\$ IMHO, that circuit meets the definition of a "programmer" - it requires a lot more external support than a chip which has a serial or USB bootloader in mask ROM from the factory. \$\endgroup\$ – Chris Stratton Dec 9 '12 at 16:00
  • \$\begingroup\$ Yes, i totally agree. It was just a note about how to get a bootloader. It is only needed just one time for every chip. \$\endgroup\$ – Volodymyr Smotesko Dec 9 '12 at 22:00

since serial port does have 2 input(DSR/CTS) and 2 output(RTS/DTR) lines,you could on and off and use them to generate the ICSP signals to program microchip devices.

ICSP specification is here: http://ww1.microchip.com/downloads/en/devicedoc/30277d.pdf

This my own DIY tutorial about how control RTS line on PC, http://www.expertcore.org/viewtopic.php?f=13&t=3670

enter image description here

You need a level converter, but I've checked on my USB2Serial device voltages, it does not reaching more than 5V in any line [since that's USB].So you could definitely use it directly. Microchip have low voltage programmable chips ,but they are little bit expensive. On the other hand you need to level up using a transistor and external 12V supply.

  • \$\begingroup\$ Bit banging with the control lines on USB serial converter is likely to be quite a bit slower than doing so with a built-in serial port. \$\endgroup\$ – Chris Stratton Dec 8 '12 at 15:15

Teensy is designed to do exactly that. It is also inexpensive:


  • \$\begingroup\$ I think the OP wanted to plug a microcontroller in a DIP package directly into the breadboard, instead of plugging a relatively more expensive development board (which happens to have 0.1 pin spacing along the sides) onto a breadboard. \$\endgroup\$ – tcrosley Dec 9 '12 at 18:09

Not the answer you're looking for? Browse other questions tagged or ask your own question.