인프런 커뮤니티 질문&답변

김상현님의 프로필 이미지

작성한 질문수

ARM Cortex-M 프로세서 프로그래밍

s102_실습환경구축 STM32CubeIDE 시작하기(교재/실습예제 다운로드)

프로그램 다운로드가 안됩니다...

해결된 질문

23.02.09 07:13 작성

·

2.2K

·

수정됨

1

강사님 안녕하세요.

질문 있습니다.

혹시 강사님께서 실습 보드에 따로 파워를 공급해주나요?

USB ST-LINK 단자로만 사용하고 있는데 드라이버 업데이트도 다 되어있고(제거 후 설치까지 해봤습니다.) 펌웨어 업데이트도 다 했는데 자꾸 디버그만 누르면

Error in final launch sequence:

Failed to start GDB server

Failed to start GDB server

java.lang.NullPointerException

 위와 같은 에러 메세지만 출력되고 디버그가 실행되지 않습니다. 무엇이 문제인지 모르겠습니다. 너무 답답하네요.


ST-LINK Utility 프로그램으로 연결해보니 잘되는 것을 보아 전원이나 연결 문제는 아닌 것 같습니다.

위 log처럼 디버그 configure를 설정해도 같은 문제가 발생하네요. ㅠㅠ

 

답변 2

0

김상현님의 프로필 이미지
김상현
질문자

2023. 02. 10. 01:35

삽질 끝에 해결했습니다.

SOL1) 보드 문제 혹은 프로젝트 문제인지 확인하기 위해 새 프로젝트도 생성해보았으며, 다른 ST사 보드를 가지고도 시도해보았으나 똑같은 오류가 발생했습니다.

SOL2) 1.7.0 버전의 STM32CubeIDE를 사용했습니다만, 이번에 1.1.7.0 버전을 삭제하고 1.11.2 버전을 설치하였습니다. 새 버전을 설치하니 정상적으로 디버깅이 되었습니다. 그런데 1.7.0 버전은 예전부터 사용해왔었고 여태 문제가 없었는데 갑자기 이러는게 이상하네요...

SOL3) 유사 프로그램이 없습니다.

SOL4) 다른 컴퓨터가 없습니다.

SOL5) 생략

SOL6) 자바 런타임을 다시 설치해보았으나 같은 문제가 발생했습니다.

 

 


결론) 재설치하니 문제없이 작동되었습니다. 여러가지 조언 감사합니다!

그런데 갑자기 SWD와 JTAG의 차이가 문득 궁금해집니다.

인터넷 서칭을 해보니 SWD는 시리얼이라 핀이 적고 JTAG은 핀이 더 많다는 식의 설명이 많던데, 그런 이유라면 SWD만 사용하지 JTAG이 있을 이유가 없을 것 같더군요. JTAG을 사용하는 다른 이유가 있을까요?

홍영기님의 프로필 이미지
홍영기
지식공유자

2023. 02. 10. 09:18

STM32CubeIDE 프로그램의 업그레이드로써 문제를 해결하셨군요. 다행입니다 :)

확인 글 감사합니다.^^

JTAG는 역사가 더 길고 SWD보다 더 오래 사용되었습니다. 결과적으로 많은 구형 장치와 마이크로 컨트롤러에는 SWD 인터페이스가 아닌 JTAG 인터페이스만 있을 수 있습니다. JTAG에는 SWD보다 더 많은 핀이 있지만 이러한 핀으로 여전히 더 많은 기능을 제공합니다. 요약하면 JTAG는 추가 디버깅 기능, 제조 테스트 환경에서의 사용 및 더 넓은 범위의 장치에 대한 지원으로 인해 여전히 널리 사용됩니다. JTAG 만 존재하던 디버깅 환경에 SWD가 등장함으로해서 디버깅 방법이 더욱 다양화 되었다라고 말씀드리겠습니다.

0

홍영기님의 프로필 이미지
홍영기
지식공유자

2023. 02. 09. 22:43

안녕하세요, 김상현님!

예기치 않은 문제가 발생하여 답답하실 것 같네요.

혹시 이 문제가 이 때문( 이 영상 22초 구간 참조 )은 아니겠지요?

아래 내용을 참조 바랍니다.

SOL1) 앞서 그림으로 보여주셨던 예제(00_CORTEX_02_ASSEMBLY_F429) 만의 문제입니까? 그렇다면 Project Explorer 의 Debug 그룹을 삭제하시고 다시 빌드한 이후 디버깅해보세요

SOL2) STM32CubeIDE 의 구형 또는 신형 버젼을 다시 설치해봅니다

SOL3) TrueSTUDIO 와 같은 이클립스 기반 유사 프로그램과의 충돌이 아닌지 생각해보십시오

SOL4) 다른 컴퓨터가 혹시 있다면 그 곳에 지금 사용하고 계신 동일한 STM32CubeIDE 버젼을 설치하시고 현재 컴퓨터의 상황과 비교 테스트 해 보시기 바랍니다.

SOL5) 자바 런타임을 완전 삭제한 이후 STM32CubeIDE 을 재 설치 해봅니다

SOL6) 자바 런타임을 다시 설치해 보는 것도 시도해 볼만합니다

위의 솔루션이 작동하지 않으면 STMicroelectronics 커뮤니티 또는 기술 지원에서 추가 지원을 요청해야 할 수 있습니다.

위의 방법으로 해결을 보셨거나, 혹은 다른 방법으로 해결을 하시게 된다면 글을 남겨주시길 부탁드립니다. 향후 이와 비슷한 사례에 대해 이 글이 성지가 될 것입니다.