티스토리 뷰

개요

 

처음 ATmega328P 칩을 다루게 되어

IDE 는 Atmel Studio 7, Programmer / Debugger 는 Atmel-ICD3 를 사용하게 되었다.

Atmel-ICD 는 Programmer 와 Debugger 를 동시에 사용할 수 없고,

Debugging 을 하려면 매번 보드의 DWEN fuse bit 를 설정해줘야 하며

다시 ISP (=Programming) 을 하려면 disable 해줘야 한다.

 

처음 접하는 분들께는 낯설 수 있기에 간단히 정리, 공유한다.

- 참고링크: https://goo.gl/R7S5zR

 

개념도

 

Fuse bytes 라고 하여, 변하지 않는 설정값으로 칩셋에 써넣는 것들이 있다.

- SPIEN set 하면 SPI 통해서 PC - Atmel-ICD3 - Atmega328P Programming (ISP = In-System Programming) 가능하다.

(중요) DWEN 하더라도 SPIEN 항상 enable 되어 있어야 한다.

- DWEN set 하면 debugWIRE 통해서 디버깅이 가능하다.

 


 

 

debugWIRE 모드로 들어가기

 

- 참고링크: https://goo.gl/R7S5zR

 

1) Project >> (Project ) Properties >> Tool 메뉴로 들어간다.

2) debugger Atmel-ICE 선택하고, 인터페이스를 debugWIRE 선택한다.

 


 

3) Debug >> Start Debugging 선택

4) 하지만 DWEN unset 상태라서 안된다. 이때 Atmel Studio 대신 DWEN set 해줄지를 물어본다. Yes!

5) 두번째 팝업의 안내처럼 Target (=Atmega328P) 파워를 껐다가 켜주면 debugWIRE 모드가 된다.

 



 

* 참고. Make sure that the reset line is free 라는 구문을 주의해서 보자. DWEN set 상태라 하더라도

reset line capacitor 등이 달려있어서 천천히 low 상태가 된다면 debugWIRE 없는 경우가 있다.

이때에는, capacitor 떼어내면 된다.

 

 

* 참고. Tools >> Device Programming 메뉴에서 DWEN set 하고 fuse program 수도 있다.

- 이때, SPIEN set 상태를 유지해야 함에 주의할

 


 

 

debugWIRE - debugging 하기

 

수정하고 프로그래밍하기

 

1) Stop Debugging 다음

2) 코드 수정 build

3) Start Debugging 하면 Writing 해주고 실행됨

 

디버깅하기

 

1) 코드의 멈추고 싶은 위치에 asm("break"); 삽입하고 build Start Debugging

2) UART 원하는 위치에서의 출력하기

3) breakpoint 설정, 변수값 보기

 

 

ISP mode 돌아오기

 

현재는 Atmel-ICE debugWIRE 모드이다.

여기서 나가려면 Debug >> Disable debugWIRE and Close 선택

Atmel-ICE ISP 모드로 바뀐다. 아마도 fuse debugWIRE bit disable?

 


 


반응형

'embedded' 카테고리의 다른 글

Embedded Project - Modularizing  (0) 2019.01.18
Atmega 328p - Software reset  (1) 2019.01.16
ScriptCommunicator - Serial packet test  (0) 2018.12.20
Arduino - Memory and PROGMEM, F() macro  (0) 2018.09.28
Arduino - TCP Client로 명령받기  (10) 2018.09.18
반응형
잡학툰 뱃지
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함