본문 바로가기
임베디드.일렉트로닉스/STM32

STM32CubeIDE . 디버그 콘솔에 printf 출력

by i.got.it 2023. 8. 16.

 

 

 

 

STM32CubeIDE 디버그 콘솔에  printf 출력 

- 아래 화면처럼 코드상의 printf 출력이 SWV ITM Data Console 에 출력되게 하기. 

 

 

 

코드에서 추가할 사항 

프로젝트에 아래 코드 추가. 

ITM_SendChar 이 디버그 창에 표현되게 하는 핵심. 

#include "stm32l4xx_hal.h" // for ITM_SendChar

int _write(int32_t file, uint8_t *ptr, int32_t len)
{
    for(int32_t i = 0; i < len; ++i) {
    	ITM_SendChar(*ptr++);
    }
    return len;
}

 

이후 코드상에서 printf() 호출하면 상기 함수에 의하여 디버그 창으로 출력된다. 

 

디버그  설정 

Debug Configuration 에서 아래 체크 한것처럼 설정하고, Core Clock 에는 해당 칩이 구동되는 클럭 주파수 (MHz 단위)으로 기록한다. 

 

디버그 모드에서 설정 

메뉴 Window 에서 아래 체크한것 클릭하여 콘솔창(SWV ITEM Data Console)이 보이게 한다. 

 

디버그 화면에 SWV ITM Data Console 보인다(아래 화면 ). 

 

 

Console 창의 설정 (위 그림의  아이콘 ) 클릭하여 뜬 창에서 

 

ITM 활성포트에 0을 선택하고, PC 샘플링 활성화 한다. 

 

 

 

 

이후 코드에서 printf 의 출력은 콘솔에 보인다. 

 

 

 

 

 

연관 

 

디버그 모드에서 파형으로 전역변수값을 모니터링 가능하다.

 

STM32CubeIDE . Debug . SWV 활성화 . 데이터 그래프로 보기

Serial Wire Viewer (SWV) 활성화 STM32CubeIDE 메뉴 : Run - Debug Configurations ... 클릭하여 뜬 아래 창에서, 탭 Debugger 의 Serial Wire Viewer 에 enable 체크하고 Core Clock 에는 프로젝트에서 설정한 HCLK 값을 MHz 단위로

igotit.tistory.com

 

 

 

 

 


첫 등록 : 2023.07.17 

최종 수정 : 2023.08.16

단축 주소 : https://igotit.tistory.com/4721


 

댓글



 

비트코인




암호화폐       외환/나스닥/골드       암호화폐/외환/나스닥/골드 암호화폐/외환/나스닥/골드   암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)     롤오버 이자 없는 스왑프리계좌
( 스왑프리 암호화폐도 거래 가능 )    
MT4, MT5 , cTrader 모두 지원     FTMO 계좌 매매운용. MT4,MT5