avrdude version 5.11.1 には atmega48p の設定がない。
故に書き込もうとするとシグネチャが Atmega48 と合わずにエラーとなり、書き込めない。
avrdude: Expected signature for ATMEGA48 is 1E 92 05
Double check chip, or use -F to override this check.
これは単にデバイスシグネチャが異なるだけなのだが(機能的には同じ、消費電力が異なる) 、atmega88 は 88p も書き込めるのに、なんで 48 だけなの、と思っているひとは大勢居た。
http://electronics.stackexchange.com/questions/3721/avrdude-and-atmega48pa
簡単に言うと、avrdude.conf の
#---------------------------------
# Atmega48
#---------------------------------
....
をコピーして Atmega48pの設定を作り、signature のみ書き換えましょう。ということです。(上記サイトでは atmega48pa となってます)
#---------------------------------
# Atmega48P
#---------------------------------
故に書き込もうとするとシグネチャが Atmega48 と合わずにエラーとなり、書き込めない。
avrdude: Device signature = 0x1e920aavrdude: Expected signature for ATMEGA48 is 1E 92 05
Double check chip, or use -F to override this check.
これは単にデバイスシグネチャが異なるだけなのだが(機能的には同じ、消費電力が異なる) 、atmega88 は 88p も書き込めるのに、なんで 48 だけなの、と思っているひとは大勢居た。
http://electronics.stackexchange.com/questions/3721/avrdude-and-atmega48pa
簡単に言うと、avrdude.conf の
#---------------------------------
# Atmega48
#---------------------------------
....
をコピーして Atmega48pの設定を作り、signature のみ書き換えましょう。ということです。(上記サイトでは atmega48pa となってます)
#---------------------------------
# Atmega48P
#---------------------------------
part
id = "m48p";
desc = "ATMEGA48P";
has_debugwire = yes;
flash_instr = 0xB6, 0x01, 0x11;
eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00,
0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF,
0x99, 0xF9, 0xBB, 0xAF;
stk500_devcode = 0x59;
signature = 0x1e 0x92 0x0a;
....
Comments
Post a Comment