STM32 팁

ST-Link에서 STM32F7 Single step 디버깅이 되지 않는 문제

ST-Link를 사용하여 STM32F7을 디버깅하는 경우 Single step 디버깅이 되지 않는 문제가 있습니다.

이 문제는 Cortex-M7 Core의 문제로 core revisions r0p0 or r0p1에서 발생됩니다.

 

http://www.keil.com/support/docs/3778.htm 

 

d6ca491b455946ed4ddf4e055b999588_1502860962_7266.png
 

Cortex-M7 Core에서 발생되는 문제이기 때문에 IAR, KEIL, Atollic, SW4STM32에서 동일하게 발생됩니다.

 

이 문제에 대해 ARM사는 디버거에서 해결방법이 없으며 Core revision r0P2이상을 사용할것을 추천합니다.

 

d6ca491b455946ed4ddf4e055b999588_1502861114_9773.png
 

하지만 Segger사의 Forum에서는 해당 문제에 대해 J-Link의 Firmware로 해당 문제를 수정하여 J-Link software 6.10b에서 지원한다고 하였습니다.

 

http://forum.segger.com/index.php?page=Thread&threadID=2819 

 

d6ca491b455946ed4ddf4e055b999588_1502861328_7818.png

 

아래는 J-Link software 6.10b의 release note입니다.

https://www.segger.com/downloads/jlink/ReleaseNotes_JLink.html 

 

d6ca491b455946ed4ddf4e055b999588_1502861447_0673.png

실제로 J-Link를 사용할 경우 문제없이 디버깅이 가능합니다.

하지만 ST-Link에서는 여전히 Single step debugging시 문제가 발생됩니다.

 

ST-Link만 가지고 있는 경우 아래와 같은 방법으로 STM32F7을 디버깅할 수 있습니다.

Segger사는 ST-Link를 J-Link로 바꿔주는 firmware를 제공하고 있습니다.

https://www.segger.com/products/debug-probes/j-link/models/other-j-links/st-link-on-board/ 

 

ST-Link를 J-Link로 변환해 주는 프로그램을 다운로드 하여 아래 순서에 따라 진행해 주시기 바랍니다.

d6ca491b455946ed4ddf4e055b999588_1502862054_7512.png
 

J-Link로 변환이 완료되면 장치관리자에서도 J-Link로 인식됩니다.

 d6ca491b455946ed4ddf4e055b999588_1502862162_9716.png 

 

이제 사용중인 IDE(IAR, Keil, Atollic)에서도 디버깅 장비를 J-Link로 변경한 후 디버깅을 진행하면 Cortex-M7 Single step debugging이 정상적으로 진행됩니다.

Comments

 

Service
등록된 이벤트가 없습니다.
글이 없습니다.
글이 없습니다.
Comment
글이 없습니다.
Banner
등록된 배너가 없습니다.
000.0000.0000
월-금 : 9:30 ~ 17:30, 토/일/공휴일 휴무
런치타임 : 12:30 ~ 13:30

Bank Info

국민은행 000000-00-000000
기업은행 000-000000-00-000
예금주 홍길동
Facebook Twitter GooglePlus KakaoStory NaverBand