USBasp is an in-circuit serial electronic programmer designed for the Atmel AVR Microcontroller family. USBasp is a low-cost programmer that converts hex file (.hex) into AVR microcontroller which consist of Atmega8 or Atmega88 microcontroller and a couple of passive components. No special USB controller required since the programmer uses a firmware-only USB driver.
In order to program a microcontroller we need to access four pins of the microcontroller, but our USB will have only two pins for communication, then how can we program a microcontroller with a USB. Here comes the functioning of the USB ASP Programmer.
In short, a USBasp in-circuit serial programming adapter used to install bootloaders and firmware on common AVR microcontrollers. In USBasp Target referred to as the board, we are programming. This module features an SCK option to support Targets with low clock sped of less than 1.5MHz.
USBasp programmer with a 10-pin ISP connection provides the interface to the microcontroller at a programming speed of 5KB/sec. This USB interface achieved by using an Atmega 8 processor and the rest done in firmware. A 10-pin male header used for various ISP header pins to make the interfacing easier. These are modules with compact size but with elegant design.
The USBasp programmer will work with a wide variety of Atmel AVR microcontrollers including the Atmega8a and Atmega168a. The USBasp driver will work on both 32 and 64-bit platforms. As a result, a USBASP programmer works on multiple platforms such as Windows, Mac OS X, and Linux.