'Firmware'에 해당되는 글 1건

  1. 2016.11.23 USBASP V2.0 펌웨어 업그레이드
2016.11.23 22:20

그간 미뤄오던 USBASP의 펌웨어 업그레이드를 진행 했다.


달라진건... warning 이 안뜬다는거랑 프로그램 속도가 좀 더 빨라진것 같은 느낌...?


까먹기전에 역시 메모...


준비물 : USBASP 2개 (한쪽은 주는쪽 한쪽은 당하는(?)... 쪽)


(서로 번갈아 가며 2번 하면 둘다 펌업이가능 합니다만... 1개만 있으면 아쉽게도.. 불가.;;)


타겟에 JP2 를 쇼트 내도록 합니다.

(이거 몰라서 왜 안되징...?? 하며 1시간 헤메었네요 ㅜㅜ)




소스코드 다운로드

http://www.fischl.de/usbasp/



압축해제 후 bin 폴더안에 hex 파일을 찾는다.


그리고 아래 명령어로 플래싱을 한다.

(-p m8 옵션은 ATMega8A MCU 이다. 혹시 다른 MCU 라면 해당 모델로 바꾸도록 한다)


$ avrdude -c usbasp -p m8 -F -e -U flash:w:usbasp.atmega8.2011-05-28.hex


avrdude: AVR device initialized and ready to accept instructions


Reading | ################################################## | 100% 0.00s


avrdude: Device signature = 0x1e9307 (probably m8)

avrdude: erasing chip

avrdude: reading input file "usbasp.atmega8.2011-05-28.hex"

avrdude: input file usbasp.atmega8.2011-05-28.hex auto detected as Intel Hex

avrdude: writing flash (4700 bytes):


Writing | ################################################## | 100% 1.80s


avrdude: 4700 bytes of flash written

avrdude: verifying flash memory against usbasp.atmega8.2011-05-28.hex:

avrdude: load data flash data from input file usbasp.atmega8.2011-05-28.hex:

avrdude: input file usbasp.atmega8.2011-05-28.hex auto detected as Intel Hex

avrdude: input file usbasp.atmega8.2011-05-28.hex contains 4700 bytes

avrdude: reading on-chip flash data:


Reading | ################################################## | 100% 1.11s


avrdude: verifying ...

avrdude: 4700 bytes of flash verified


avrdude: safemode: Fuses OK (E:FF, H:D9, L:FF)


avrdude done.  Thank you. 


끝... (이래 간단한 것을...;;)




펌웨어 업글 이전 / 이후 비교로그

haebi@haebi-W330AU ~/workspace/avr/atmega328p/timer2 $ ./program.sh 


avrdude: warning: cannot set sck period. please check for usbasp firmware update.

avrdude: AVR device initialized and ready to accept instructions


Reading | ################################################## | 100% 0.00s


avrdude: Device signature = 0x1e950f (probably m328p)

avrdude: erasing chip

avrdude: warning: cannot set sck period. please check for usbasp firmware update.

avrdude: reading input file "timer2.hex"

avrdude: input file timer2.hex auto detected as Intel Hex

avrdude: writing flash (602 bytes):


Writing | ################################################## | 100% 0.41s


avrdude: 602 bytes of flash written

avrdude: verifying flash memory against timer2.hex:

avrdude: load data flash data from input file timer2.hex:

avrdude: input file timer2.hex auto detected as Intel Hex

avrdude: input file timer2.hex contains 602 bytes

avrdude: reading on-chip flash data:


Reading | ################################################## | 100% 0.30s


avrdude: verifying ...

avrdude: 602 bytes of flash verified


avrdude: safemode: Fuses OK (E:FF, H:DE, L:FF)


avrdude done.  Thank you. 

업글 이전 warning 이 표시되었다.



그리고 업글 후...

haebi@haebi-W330AU ~/workspace/avr/atmega328p/timer2 $ ./program.sh 


avrdude: AVR device initialized and ready to accept instructions


Reading | ################################################## | 100% 0.00s


avrdude: Device signature = 0x1e950f (probably m328p)

avrdude: erasing chip

avrdude: reading input file "timer2.hex"

avrdude: input file timer2.hex auto detected as Intel Hex

avrdude: writing flash (602 bytes):


Writing | ################################################## | 100% 0.23s


avrdude: 602 bytes of flash written

avrdude: verifying flash memory against timer2.hex:

avrdude: load data flash data from input file timer2.hex:

avrdude: input file timer2.hex auto detected as Intel Hex

avrdude: input file timer2.hex contains 602 bytes

avrdude: reading on-chip flash data:


Reading | ################################################## | 100% 0.15s


avrdude: verifying ...

avrdude: 602 bytes of flash verified


avrdude: safemode: Fuses OK (E:FF, H:DE, L:FF)


avrdude done.  Thank you.


warning 이 사라졌다!!







Posted by 해비