Skip to main content

AVR upload executable file in Atmel studio 7


Adding programmer

Atmel-ICE, AVRISP mkII 등은 자동으로 잡힙니다.

STK500

View -> Available Atmel tools

Available tools 창 안쪽에서 오른쪽 클릭 후 Add Target을 선택합니다.

또는 Tools -> Add Target을 선택합니다.

STK500을 선택한 후, 장치 관리자에서 포트를 확인하여 STK500에 맞는 포트를 선택합니다.

danger

STK500 하드웨어 버전이 낮은 경우(STK500v1) 인식되지 않습니다.

제거할 때, Available tools 창에서 해당 프로그래머를 오른쪽 클릭한뒤 remove하면 제거됩니다.

avrdude

Atmel studio 7에서 지원하지 않는 장치의 경우 avrdude를 사용해야하는 경우가 있습니다.

예를 들어 아두이노 보드에 코드를 업로드해야 하는 경우 Tools -> External Tools를 추가해야합니다.

  • title: arduino_nano
  • command : <path>\avrdude.exe
  • Arguments : -patmega328p -carduino -PCOM7 -b115200 -v -Uflash:w:$(TargetPath):e
  • Initial directory :
  • ✔ Use Output window

command 부분의 경우 avrdude.exe를 설치한 경로를 선택하면 됩니다. 일반적으로 아두이노 IDE를 설치하시면 설치 경로에 있습니다.

Arguments는 상황에 따라 선택해줘야 합니다. AVR upload executable file in Terminal #Upload를 참고하시기 바랍니다.

info

Arguments 오른쪽에 화살표를 클릭하면 상황에 따라 사용할 수 있는 변수들이 있습니다. 해당 변수가 어떤 것을 의미하는지 확인하고 싶다면 ✔ Prompt for arguments를 선택하고 업로드를 시도해보면 변수가 어떻게 바뀌어있는지 보여주는 창이 업로드 전에 뜹니다.

수동 업로드

Available tools 창에서 원하는 프로그래머를 오른쪽 클릭한 후, Device Programming을 선택합니다.

또는 Tools -> Device Programming을 선택합니다.

Tool에 원하는 프로그래머를 선택하고 Apply를 누릅니다.

Memories에서 flash, eeprom 업로드를 하거나 다운로드 할 수 있습니다. 그 외 Fuses, Lock bits 등을 제어할 수 있습니다.

External tools를 사용하는 경우 Tools -> <External tools title>을 선택하시면 됩니다.

빌드 + 자동 업로드

Project -> <프로젝트명> Properties를 선택합니다.

Tool을 선택하면 프로그래머를 선택하실 수 있습니다.

AVR 8bit의 경우 디버깅기능이 없는 경우가 많습니다. 때문에 Start Without Debugging(Ctrl + Alt + F5)를 사용하여 디버깅 없이 빌드 + 업로드를 하면 됩니다.

External tools 사용하는 경우에는 Custom Programming Tool을 선택해야 합니다.

danger

avrdude가 환경 변수 Path에 등록되어 있어야 합니다.

External tools를 등록할 때, Prompt for arguments를 선택한 후, 수동 업로드를 실행하면 아래와 같은 창이 뜹니다.

Command Line 내용을 복사하여 Custom programming tool의 Command에 붙여넣습니다.

그리고 <path>/avrdude.exe 부분을 avrdude로 바꾸면 됩니다.