This is a question we are often asked. I want a genuine Atmel AVR ISP MKII (ATAVRISP2) not a Chinese clone, can you supply it? Unfortunately the answer is no as Atmel have stopped manufacturing their ATAVRISP2 programmer.
ISP or In System Programming is the best way to program AVR microcontrollers as it allows them to be programmed in circuit. This is easier for development, production and most importantly, for updating the firmware later in the field. The tool used for this is an AVR ISP.
Arduino is officially an open source electronic prototyping system, which is sold with the slogan “So easy, my granny can use it”. It is not quite as simple as that but it is pretty easy to buy a successful project and implement it quickly. So if your idea has already been done, Arduino makes it straightforward to carry it out.
If you have been using Arduino to develop your code but want to move on to develop your own AVR based circuit or want to program your Arduino board with an external programmer to give more code space, you will need to understand how to use an AVR ISP or In System Programmer. This post covers the information you need
You can use a normal AVR ISP programmer to upload Arduino sketches to an Arduino board or to an AVR microcontroller in your own circuit, such as ATmega328P, ATmega8 or ATmega2561, but first you need to know how to find the hex files that the programmer needs. The Arduino IDE makes this as hard as possible for some reason. This post shows you how to find them and also how to make Arduino put them in an easier place to find in future.
AVRDude is free open source software for programming AVR microcontrollers. It is command line based but can be run from a batch or make file. It is the main programming utility used by Arduino software when the target board does not have a bootloader.
Kanda have been making the STK200 starter kit for 15 years and it is still proving to be very popular. It was originally designed for Atmel and was the first low cost microcontroller training kit on the market and helped launch the AVR as a popular microcontroller.
Atmel have since moved on to STK500 and STK600 as the AVR portfolio has expanded but the original kit has many advantages, especially for beginners. Arduino has also entered the market but this serves a different purpose and won’t actually teach you much about microcontrollers.
AVR microcontrollers are all In System Programmable (ISP) so it doesn’t make sense to use a socket programmer for them – AVR ISP is the way to go. But what features should you look for when you are choosing an AVR programmer?
AVRStudio is the development software for AVR microcontrollers supplied by Atmel to allow users to easily develop code for their devices. It includes project management, code editors, assembler and C compilers, simulator and programmer and emulator support. It has been developed over the years and has reached AVRStudio v7.1 but older versions are available, so which version is the best for you?
An AVR microcontroller is a type of device manufactured by Atmel, which has particular benefits over other common chips, but first what is a microcontroller?
The easiest way of thinking about it is to compare a microcontroller with your PC, which has a motherboard in it. On that motherboard is a microprocessor (Intel, AMD chips) that provides the intelligence, RAM and EEPROM memories and interfaces to rest of system, like serial ports (mostly USB ports now), disk drives and display interfaces.
A microcontroller has all or most of these features built-in to a single chip, so it doesn’t need a motherboard and many components, LEDs for example, can be connected directly to the AVR. If you tried this with a microprocessor, bang!