Review on AVR serial and parallel microcontroller programmers
Its been a lot written about AVR microcontroller programmers. This article concludes most common programmers.
The easiest programming method is Serial Downloading so called ISP. This allows to program AVR microcontroller without removing it from target board. Usually in such boards are special ISP connector where you connect external AVR ISP with standard 6 or 10 header.
AVR ISP usually connects to computers COM or LPT port. COM port has advantage of ability to use long cables while LPT is limited up to about 1 metter long. But in other hand using COM port requires additional complementary circuit to match the voltage levels while simplest LPT programmer doesn’t need any parts at all:

But it is safer to use some kind of buffering circuit like 74HC244 to add some protection from port failure.
Another programmer which can be successfully used is ByteBlaster. This is recommended when you are used to work with PLD (Altera) devices. You may easily modify ByteBlaster to be able to program AVR microcontrollers. For programming AVR microcontrollers you may use AVReAL programming software or avrdude. It is up to you how you will configure your software. You don’t even have to modify your ByteBlaster programmer if you are not going to use standard header.
In mass production it is convenient to use parallel programmer. IF for ISP programming there were only 4 data lines used and 2 power lines then for parallel would be 20 (depending on microcontroller type). Using parallel programmer you can program multiple AVR microcontrollers at same time. You would say that parallel programmer is useless for you. In some cases no, because many AVR microcontrollers have ability to use RESET pin as genera I/O pin and this fuse bit selection can only done in parallel programming mode. Restoring of normal RESET function can only be done in parallel mode. Using parallel programming mode you can also disable Serial Downloading mode. Parallel programmer is more complex circuit and hobbyists usually doesn’t use it:

This time I skip JTAG and Bootloader based programming methods as they are going to be discussed in separate threads.
Blogsphere: TechnoratiFeedsterBloglines
Bookmark: Del.icio.usSpurlFurlSimpyBlinkDigg
RSS feed for comments on this post | TrackBack URI for this post
New on WinAVR Tutorial
Running TX433 and RX433 RF modules with AVR microcontrollers,Sometimes in embedded design you may want to go wireless. Might be you will want to log various readi …Programming AVR ADC module with WinAVR,Most of AVR microcontrollers have Analog to Digital Converter (ADC) integrated in to chip. Such solut … |
New on WinARM Tutorial
What are differences between WinARM and WinAVR,Everyone who is working with AVR microcontrollers knows this powerful tool – WinAVR (http://win …LPC2000 watchdog timer,As in all microcontrollers watchdog timers purpose isto reset microcontroller after reasonable amount … |
