DownloadersUploaDErs should be transparent to most users using Makefiles. However, and while being curious about when the 'make load' command is invoked, here are descriptions of programs involved in the ``load'' process between the computer and the micro controller. Keep on mind that these programs do the job of communicating and sending compiled program data from computer to the micro controller.
AVRDUDE is a full featured Open Source utility program for programming Atmel's AVR CPU's. It can program the Flash and EEPROM, and where supported by the serial programming protocol, it can program fuse and lock bits. Also it can be used to download/upload/manipulate the ROM and EEPROM contents of AVR micro controllers using the in-system programming technique (ISP).
AVRDUDE's 'man' entry, describes it as a program for downloading code and data to Atmel AVR micro controllers. Avrdude supports Atmel's STK500 programmer, Atmel's AVRISP and AVRISP mkII devices, Atmel's JTAG ICE (both mkI and mkII, the latter also in ISP mode), programmers complying to AppNote AVR910 and AVR109 (including the Butterfly), as well as a simple hard-wired programmer connected directly to a ppi(4) or parport(4) parallel port, or to a standard serial port. In the simplest case, the hardware consists just of a cable connecting the respective AVR signal lines to the parallel port.
UISP is another Open Source progrma whi allows you to program your micro controller through the parallel or serial ports of your computer. It does not appear to have been updated in awhile, and it is unknown whether its development is still active. It may be necessary on some Macs where some versions of avrdude,don't work with the hardware and software we are using.
AVR Studio is a free Integrated Development Environment (IDE) for writing and debugging AVR applications in Windz environments. In addition to an editor, it has its own programming/downloading application for writing programs to the AVR.
STK500 is an Atmel Kit but it is also a development system with an in-system programmer for programming AVR devices in external target system. AVRMini , Wiring , and Arduino use STK500 to allow programming of its ATMega micro controllers. Bootloaders with STK500 should be used in order to be able to use the above programs. Installing bootloaders on ATMega chips should be done carefully and is beyond the scope of this article.
FTDI, is a chip embedded in Wiring or Arduino which allows a USB to serial UART interface. Once you plug your USB cable into the board and the computer a serial interface is created on the operating system and the serial ports can be seen as something like 'ttyUSBx' in Linux. In order to be able to read or write on these devices on Linux Fedora systems you need to be part or have permissions on 'uucp' and 'lock' groups.
© Copyright 2001-2008 CCRMA, Stanford University. All rights reserved.
Created and Mantained by Juan Reyes