Arduino: Unterschied zwischen den Versionen

Aus Matthias Wiki
Zur Navigation springen Zur Suche springen
Zeile 46: Zeile 46:
| externer Oszillator "full swing"                    || 0xf7 ||      ||  
| externer Oszillator "full swing"                    || 0xf7 ||      ||  
|- valign="top"
|- valign="top"
| sichere High-Fuse                                   ||      || 0xdf ||  
| sichere High-Fuse (default)                        ||      || 0xdf ||  
|- valign="top"
|- valign="top"
| kein Bootloader                                     ||      ||      || 0xf9
| kein Bootloader (default)                          ||      ||      || 0xf9
|- valign="top"
|- valign="top"
| 1kb Bootloader                                      ||      ||      || 0xf8
| 1kb Bootloader                                      ||      ||      || 0xf8

Version vom 15. November 2015, 21:59 Uhr

Arduino als In-System-Programmierer

Links

Beschreibung

  • ATMega besser mit Quartz laufen lassen, ansonsten funktioniert möglicherweise die Kommunikation via SPI nicht
  • Achtung, Taktgeber nicht auf "external Clock" einstellen, dann muss der Takt von außen aktiv vorgegeben werden. Hilfe gibt es hier

Chip erase

avrdude.exe -P COM6 -b 19200 -c arduino -p atmega168p -C ..\etc\avrdude.conf -e

Lesen/Schreiben von Fuses für ATMega168

Read fuses:

avrdude.exe -P COM6 -b 19200 -c arduino -p atmega168p -C ..\etc\avrdude.conf

Write fuses:

avrdude.exe -P COM6 -b 19200 -c arduino -p atmega168p -C ..\etc\avrdude.conf -U lfuse:w:0xXX:m -U hfuse:w:0xXX:m -U efuse:w:0xXX:m

Werte für Fuses:

Funktion lfuse hfuse efuse
interner Oszillator mit "clock division" (default) 0x62
interner Oszillator ohne "clock division" 0xe2
externer Oszillator 0xff
externer Oszillator "full swing" 0xf7
sichere High-Fuse (default) 0xdf
kein Bootloader (default) 0xf9
1kb Bootloader 0xf8

Locking

Dokumentation zu den Lock-Bits ist sehr dürftig. Über die Lock-Bits kann man sich aus dem Chip auch aussperren.

Entsperren:

avrdude.exe -P COM6 -b 19200 -c arduino -p atmega168p -C ..\etc\avrdude.conf -U lock:w:0x3F:m

Sperren:

avrdude.exe -P COM6 -b 19200 -c arduino -p atmega168p -C ..\etc\avrdude.conf -U lock:w:0x0F:m

Flashen

Schreiben:

avrdude.exe -P COM6 -b 19200 -c arduino -p atmega168p -C ..\etc\avrdude.conf -U flash:w:flash.hex:i

Auch das EEPROM kann ausgelesen werden: "eeprom" anstelle von "flash"

Lesen:

avrdude.exe -P COM6 -b 19200 -c arduino -p atmega168p -C ..\etc\avrdude.conf -U flash:r:flash.hex:i

Auch das EEPROM kann beschrieben werden: "eeprom" anstelle von "flash"

Quadrokopter

Siehe Quadrokopter