
VS Code용 C-SPY 확장 프로그램에서 목록창을 사용하여 생산성 향상하기
때로는 가장 간단한 솔루션이 가장 효율적인 솔루션일 수 있습니다. 목록창은 기본적으로 스프레드시트의 C-SPY 버전으로, 개발자가 실행 중인 프로그램에 대해 알아야 할 모든 것을 제공합니다. 이 기능을 개발한 개발자로서 여러분도 저희만큼이나 이 기능의 추가를 반가워해야 한다고 생각합니다.
데이터가 있으면 목록창도 있습니다.
프로그램에 문제가 발생하는 이유를 이해하는 열쇠는 기본 데이터에 있습니다. 때로는 포인터를 잃어버린 것일 수도 있고, 대괄호를 잘못 배치한 것 같은 단순한 문제일 수도 있습니다. 어쨌든 문제 해결의 핵심은 데이터를 효율적으로 볼 수 있어야 한다는 것입니다. 필요한 모든 것을 보여주는 행 기반 보기 개념인 목록창을 사용해 보세요. 목록 창을 사용하면 이제 VS Code 사용자는 다음을 시각적으로 검토하고 이해할 수 있습니다.
- 핵심 레지스터
- 심볼릭 메모리
- 라이브 워치
- ETM/SWO 트레이스
- 기능 프로파일링
- 코드 커버리지
목록 창을 사용하여 디버깅 환경 개선하기
임베디드 개발의 두 가지 핵심 요소는 메모리 관리와 보안이며, 후자는 커넥티드 세상에서 점점 더 중요해지고 있습니다. 따라서 몇 가지 목록 창을 사용하여 임베디드 디바이스의 메모리와 보안을 관리하는 방법을 보여드리겠습니다.
레지스터 보기는 디바이스의 다양한 레지스터에 대한 유용한 인사이트를 제공합니다. 변경된 값은 빨간색으로 표시되며 각 레지스터의 보기 형식은 컨텍스트 메뉴에서 간단히 변경할 수 있습니다. '레지스터 사용자 그룹 설정' 보기를 사용하여 필요에 맞는 맞춤형 레지스터 세트를 만들거나 미리 정의된 레지스터 중 하나를 사용하여 세그먼트 사이를 탐색할 수 있습니다.
심볼릭 메모리는 메모리를 검색하고 작업하는 데 도움이 됩니다. '이동' 기능을 사용하면 이름이나 주소를 사용해 변수를 검색하여 유형, 값, 위치를 모두 제공할 수 있습니다. 값 열을 클릭하고 새 값을 입력하기만 하면 값을 변경할 수도 있습니다.
보안 측면에서 코드 커버리지는 모든 코드가 실행되고 테스트되는지 확인할 수 있는 효율적인 방법입니다. 개념은 간단합니다. 각 명령어가 적어도 한 번 이상 실행되는지 확인하여 나중에 불쾌한 일이 발생하는 것을 방지하는 데 도움이 됩니다. 코드 커버리지를 활성화하려면 하단 패널에서 IAR 추적을 열고 코드 커버리지 도구 모음에서 활성화 버튼을 클릭하여 추적이 활성화되어 있는지 확인합니다. 하드웨어에서 실행하는 경우 정확도를 높이려면 ETM 추적을 사용하세요. 코드 커버리지 보기에는 프로그램 단위부터 if 절의 분기 단위까지 컨텍스트에 따라 커버되는 명령어의 비율이 계속 나열됩니다.
또 다른 유용한 기능은 추적 보기를 두 번 클릭하여 '찾아보기 모드'를 활성화하는 것입니다. 찾아보기 모드를 사용하면 추적 항목을 클릭하면 해당 코드 줄이 편집기에 표시됩니다.
필요에 맞게 사용자 환경 조정
많은 수의 목록창을 사용할 수 있으므로 사용 가능한 화면 공간을 최대한 효율적으로 사용하는 것이 중요합니다. 필요한 정보에 쉽게 액세스할 수 있도록 관심 없는 목록창을 숨기거나 사용 가능한 공간이 더 많은 위치로 목록창을 옮길 수 있습니다.
목록창을 숨기거나 숨기기를 해제하려면 먼저 목록창의 제목을 마우스 오른쪽 버튼으로 클릭합니다. 상황에 맞는 메뉴에 해당 보기에서 사용 가능한 창 목록이 표시되고 현재 표시된 창 옆에 체크 표시가 되어 있습니다. 목록창의 표시 여부를 전환하려면 이 상황에 맞는 메뉴에서 해당 항목을 누르기만 하면 됩니다.
목록창은 제목을 클릭하고 드래그한 다음 새 위치에 놓아 사용자 인터페이스에서 이동할 수 있습니다. 자주 사용하는 목록창 중 일부는 VS Code의 보조 사이드 패널로 이동하여 쉽게 액세스할 수 있도록 하는 것이 좋습니다. 보조 사이드 패널이 나타날 때까지 목록창을 화면 오른쪽으로 드래그하기만 하면 됩니다. 목록창을 하단 패널의 탭으로 이동하거나 하단 패널에 자체 탭을 지정할 수도 있습니다. 예를 들어 디버그 콘솔 옆에 목록 창을 배치하거나 트레이스, 프로파일링 또는 코드 커버리지 창 중 하나를 자체 탭으로 이동하는 등의 방법으로 이 기능을 활용할 수 있습니다.
요약
목록창은 C-SPY를 단순한 VS 코드 디버거에서 VS 코드 디버거로 한 단계 업그레이드한 기능입니다. 복잡한 데이터로 작업할 때는 시각화가 가장 중요하며, 목록창은 이를 위한 도구입니다. 특정 레지스터의 값을 확인하거나 단일 명령어의 효과를 파악하는 등 다양한 작업을 최대한 효율적으로 수행할 수 있도록 VS Code 확장 기능을 제공합니다.
다음 단계는 무엇인가요?
궁금한 점이 해결되었다면 기다리지 마시고 Visual Studio 마켓플레이스에서 IAR 임베디드 워크벤치를 다운로드하고 최신 확장 기능을 설치하세요.
이러한 기능이 실제로 작동하는지 확인하고 싶으신가요? 동영상을 보고 이 기능들이 디버깅 워크플로를 어떻게 혁신하는지 알아보세요.

