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:23] 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.\\ |