GDB SWD 디버깅
터미널에서 GDB를 사용하여 하드웨어 대상을 연결하는 방법을 설명합니다. IDE를 사용하려면 Eclipse 또는 VSCode 사용법을 참고하십시오.
인터페이스 배선에 대해서는 이 세부 정보를 참조하십시오.
Dronecode 프로브 / Blackmagic 프로브 사용
GDB와 함께 Dronecode 프로브를 사용하려면, 현재 자동조종장치에서 플래싱된 정확한 ELF 파일로 GDB를 시작하십시오.
그런 다음, Dronecode 프로브 인터페이스를 선택하여야 합니다. Linux에서는 다음과 같습니다.
그런 다음 대상을 스캔합니다.
다음과 같은 내용이 표시되어야 합니다.
일부 자동조종장치는 0.0V를 표시하지만, 후속 단계는 그럼에도 불구하고 작동합니다.
이제 해당 대상에 연결할 수 있습니다.
이제 연결되어야 합니다.
JLink 사용
JLink 디버거를 사용하려면, 먼저 JLink GDB 서버가 포함된 JLink 소프트웨어를 설치합니다.
JLink 설치 프로그램은 JLink GDB 서버를 /usr/bin/
에 설치합니다. 설치가 완료되면, 다음을 사용하여 서버를 시작합니다.
그런 다음, 권장되는 JLink를 업데이트하고, 통신 중인 장치를 지정하라는 메시지가 표시될 수 있습니다. 특정 장치에 대한 자동조종장치의 문서를 확인하십시오.
완료되면 다음과 같이 GDB 서버는 포트 2331
에서 수신 대기를 시작합니다.
이제 자동조종장치(별도의 터미널에서)에서 현재 플래시된 정확한 elf 파일로 GDB를 시작할 수 있습니다.
그리고, GDB 서버에 연결합니다:
이제 연결되어야 합니다.
GDB 빠른 시작
연결되면, 다음과 같은 일반적인 GDB 명령을 사용할 수 있습니다.
continue
: 프로그램 실행을 계속 실행run
: 처음부터 시작backtrace
: 역추적을 조회break somewhere.cpp:123
: 중단점 설정delete somewhere.cpp:123
중단점 삭제info locals
: 지역 변수 조회info registers
: 리지스터 출력
그리고, 좋은 툴을 사용하여 GDB에 대하여 더 공부하십시오.
매번 GDB에 연결하기 위하여, 모든 명령을 입력해야 하는 것을 피하기 위하여 ~/.gdbinit
에 작성할 수 있습니다.
Last updated