Arduino: Unterschied zwischen den Versionen
| Zeile 14: | Zeile 14: | ||
*[http://www.engbedded.com/fusecalc Einstellhilfe für AVR Fuses] | *[http://www.engbedded.com/fusecalc Einstellhilfe für AVR Fuses] | ||
*[http://www.mikrocontroller.net/articles/AVR Microcontroller.net: AVR] | *[http://www.mikrocontroller.net/articles/AVR Microcontroller.net: AVR] | ||
*[http://derjulian.net/mikrocontroller#headline_17 ATMega168 Pin-Layout] | *[http://derjulian.net/mikrocontroller#headline_17 ATMega168 Pin-Layout], [https://www.arduino.cc/en/Hacking/PinMapping168 mit Arduino-Mapping] | ||
*[https://camo.githubusercontent.com/74ec507485d8fb1d729756d98f4a4c1634c7a289/68747470733a2f2f662e636c6f75642e6769746875622e636f6d2f6173736574732f3530343931342f323230383739372f65656439303038302d393938332d313165332d383665362d3462383434396330316432362e706e67 Arduino Micro Pin-Layout] | *[https://camo.githubusercontent.com/74ec507485d8fb1d729756d98f4a4c1634c7a289/68747470733a2f2f662e636c6f75642e6769746875622e636f6d2f6173736574732f3530343931342f323230383739372f65656439303038302d393938332d313165332d383665362d3462383434396330316432362e706e67 Arduino Micro Pin-Layout] | ||
*[http://playground.arduino.cc/Code/Programmer2 ISP-Programmer für Arduino nach stk500'''v2'''-Protokoll] | *[http://playground.arduino.cc/Code/Programmer2 ISP-Programmer für Arduino nach stk500'''v2'''-Protokoll] | ||
*[http://www.martyncurrey.com/arduino-atmega-328p-fuse-settings Gute Beschreibung einzelner Fuse-Bits] | *[http://www.martyncurrey.com/arduino-atmega-328p-fuse-settings Gute Beschreibung einzelner Fuse-Bits] | ||
Version vom 20. November 2015, 06:22 Uhr
Arduino allgemein
Links
Arduino als In-System-Programmierer
Links
- Arduino als In-System-Programmierer
- Firmware flashen
- Arduino Micro as ISP
- From Arduino to a Microcontroller on a Breadboard
- Tipps zu AVR Fuses
- Einstellhilfe für AVR Fuses
- Microcontroller.net: AVR
- ATMega168 Pin-Layout, mit Arduino-Mapping
- Arduino Micro Pin-Layout
- ISP-Programmer für Arduino nach stk500v2-Protokoll
- Gute Beschreibung einzelner Fuse-Bits
- Datenblat ATMega168
- Anleitung für Booloader
Beschreibung
- ArduinoISP arbeitet mit 19200bps
- 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 ohne "clock division" | 0xff | ||
| externer Oszillator mit "clock division" | 0x7f | ||
| 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