Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
avr_bootloader:burning_firmware [2014/07/23 16:20] admin |
avr_bootloader:burning_firmware [2020/06/11 22:13] (current) |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ---- | ---- | ||
| - | **Burning the Firmware on the USBasp Programer** | + | **Burning the Firmware on the USBasp Programmer** |
| ---- | ---- | ||
| - | **Set Fusebits** | + | With the command line tool [[http://www.nongnu.org/avrdude/|AVRdude]] one can burn the firmware on the Atmega8 chip.\\ |
| - | # TARGET=atmega8 HFUSE=0xc9 LFUSE=0xef | + | Download the firmware from: [[http://www.fischl.de/usbasp/]]. And read the [[http://www.fischl.de/usbasp/Readme.txt|Readme.txt]].\\ |
| - | # TARGET=atmega48 HFUSE=0xdd LFUSE=0xff | + | |
| - | # TARGET=atmega88 HFUSE=0xdd LFUSE=0xff | + | |
| ---- | ---- | ||
| - | **Workaround for Atmega8** | + | **Workaround on Linux** |
| 1. Erase:\\ | 1. Erase:\\ | ||
| $ sudo avrdude -p atmega8 -c stk500v2 -P /dev/ttyACM0 -e | $ sudo avrdude -p atmega8 -c stk500v2 -P /dev/ttyACM0 -e | ||
| 2. Set Fusebits\\ | 2. Set Fusebits\\ | ||
| - | $ sudo avrdude -p atmega8 -c stk500v2 -P /dev/ttyACM0 -U HFUSE:w:0xc9:m | + | $ sudo avrdude -p atmega8 -c stk500v2 -P /dev/ttyACM0 -U HFUSE=0xc9 |
| - | $ sudo avrdude -p atmega8 -c stk500v2 -P /dev/ttyACM0 -U hfuse:w:0xc9:m | + | $ sudo avrdude -p atmega8 -c stk500v2 -P /dev/ttyACM0 -U LFUSE=0xef |
| 3. Burn the Hex File:\\ | 3. Burn the Hex File:\\ | ||
| $ sudo avrdude -p atmega8 -c stk500v2 -P /dev/ttyACM0 -b115200 -U flash:w:usbasp.atmega8.2011-05-28.hex:i | $ sudo avrdude -p atmega8 -c stk500v2 -P /dev/ttyACM0 -b115200 -U flash:w:usbasp.atmega8.2011-05-28.hex:i | ||
| ---- | ---- | ||
| - | **Comands for the AVRdude** | ||
| - | |||
| - | Options: | ||
| - | -p <partno> Required. Specify AVR device. | ||
| - | -b <baudrate> Override RS-232 baud rate. | ||
| - | -B <bitclock> Specify JTAG/STK500v2 bit clock period (us). | ||
| - | -C <config-file> Specify location of configuration file. | ||
| - | -c <programmer> Specify programmer type. | ||
| - | -D Disable auto erase for flash memory | ||
| - | -i <delay> ISP Clock Delay [in microseconds] | ||
| - | -P <port> Specify connection port. | ||
| - | -F Override invalid signature check. | ||
| - | -e Perform a chip erase. | ||
| - | -O Perform RC oscillator calibration (see AVR053). | ||
| - | -U <memtype>:r|w|v:<filename>[:format] | ||
| - | Memory operation specification. | ||
| - | Multiple -U options are allowed, each request | ||
| - | is performed in the order specified. | ||
| - | -n Do not write anything to the device. | ||
| - | -V Do not verify. | ||
| - | -u Disable safemode, default when running from a script. | ||
| - | -s Silent safemode operation, will not ask you if | ||
| - | fuses should be changed back. | ||
| - | -t Enter terminal mode. | ||
| - | -E <exitspec>[,<exitspec>] List programmer exit specifications. | ||
| - | -x <extended_param> Pass <extended_param> to programmer. | ||
| - | -y Count # erase cycles in EEPROM. | ||
| - | -Y <number> Initialize erase cycle # in EEPROM. | ||
| - | -v Verbose output. -v -v for more. | ||
| - | -q Quell progress output. -q -q for less. | ||
| - | -? Display this usage. | ||