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

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

by i.got.it 2023. 7. 14.

 

 

Serial Wire Viewer (SWV) 활성화 

 

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

 

 

 

SWV 데이터 트레이스 타임라인 그래프 

디버그 모드에서 메뉴 : Window - Show View - SWV - SWV 데이터 트레이스 타임라인 그래프 클릭하면 아래 화면 의 파란 박스 처럼 창이 추가된다. 

 

 

이 창에는 코드내의 전역 변수의 값을 플로팅 해주기 때문에 매우 편리하게 코드 작동 상황을 확인할 수 있다. 

 

플로팅할 전역변수를  설정하기 위해서는 아래 그림의 붉은 박스 클릭하여 뜬 창에서 파란 박스 처럼 활성화 체크하고 전역변수 이름을 기록한다. 

 

 

아래와 같은 코드 작성 했다고 한 경우

 


int i_test = 0 ; // 전역변수 

int main()
{
.. 중략 
    while (1){
       HAL_Delay(10);
       i_test++; 
       if(i_test > 31){
          i_test = 0; 
       }
    }

}

 

상기 코드의 i_test 가  아래처럼 플로팅 된다. 

 

영상. - 설정과 디버깅 중  실시간 파형 플로팅 

 

 

 

 

연관 

 

디버그 콘솔에 printf  출력 하기. 

 

STM32CubeIDE . 디버그 콘솔에 printf 출력

STM32CubeIDE 디버그 콘솔에 printf 출력 - 아래 화면처럼 코드상의 printf 출력이 SWV ITM Data Console 에 출력되게 하기. 코드에서 추가할 사항 프로젝트에 아래 코드 추가. ITM_SendChar 이 디버그 창에 표현되

igotit.tistory.com

 

 

이와 유사한 기능이 KEIL에서는  로직애널라이저 라는 이름으로 제공된다. 

 

KEIL MDK-ARM. Logic Analyzer Window

Logic Analyzer Window KEIL MDK-ARM 의 Debug 모드에서 Logic analyzer Windows 로 펌웨어의 변수들의 값을 파형으로 보기. 개요 설명사이트 : http://www.keil.com/support/man/docs/ulink2/ulink2_trace_la_window.htm 로직애널라이저

igotit.tistory.com

 

 

 

 


첫 등록 : 2023.07.14

최종 수정 : 

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


 

 

 

 

댓글



 

비트코인




암호화폐       외환/나스닥/골드         암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)         프랍 트레이더 온라인 지원가능. MT4,MT5