임베디드 개발

다양한 하드웨어 유형 및 툴체인에 대해 CLion을 구성하는 방법과 칩에서 디버그하는 방법에 대해 알아보세요.

GDB 서버

GDB 서버를 이용한 온칩 디버그

GDB 서버를 이용해 원하는 마이크로컨트롤러에서 디버깅할 수 있을 경우 이제 CLion에서 Embedded GDB Server 실행/디버그 구성을 사용해 이 작업을 수행할 수 있습니다. OpenOCD, ST-Link GDB Server, Segger J-Link GDB Server, QEMU 등 수많은 GDB 서버를 지원합니다.

마법사는 마법사 설정에서 선택한 GDB 서버 유형에 해당하는 사전 정의된 GDB 서버 인수를 사용해 Embedded GDB Server(임베디드 GDB 서버) 실행 구성을 생성하는 데 도움이 됩니다.

OpenOCD

Open On-Chip Debugger

CLion에서 Open On-Chip Debugger로 디버깅이 지원됩니다. 마이크로컨트롤러에서 디버그를 하려면 새로운 Run/Debug configuration 템플릿,'OpenOCD Download and Run' 을 사용하세요.

만약 CLion에서 STM32CubeMX 프로젝트로 작업하는 경우 OpenOCD Run/Debug configuration이 자동적으로 생성됩니다.

STM32CubeMX 및 OpenOCD 통합 자세히 알아보기

FreeRTOS 스레드 뷰

RTOS 통합

CLion에서 RTOS를 사용하여 애플리케이션을 디버그하는 경우, 작업 목록이 포함된 뷰를 사용할 수 있습니다. 해당 작업으로 전환하여 작업 변수 등을 탐색할 수 있습니다. FreeRTOS, Zephyr, and Azure RTOS are supported.

주변 장치

ARM 디바이스용 주변 장치 뷰

온칩 디버그를 수행할 때 주변 장치를 확인할 수 있는 기능이 매우 중요합니다. CLion에서는 이제 두 종류의 실행/디버그 구성(Embedded GDB 서버OpenOCD Download & Run)에서 이 뷰를 사용할 수 있습니다. 두 경우 모두 사용자가 디버그를 시작할 때 주변 장치 탭이 디버그 도구 창에 표시됩니다. 보드에 맞는 적절한 .svd 파일을 로드하고 확인하려는 유효한 주변 장치를 선택하세요.

자세히 알아보기

PlatformIO

PlatformIO

PlatformIO는 임베디드 개발자의 프로젝트를 지원하는 오픈 소스 플랫폼입니다. 임베디드 프로젝트에서 PlatformIO를 활용하려면 CLion 플러그인 PlatformIO를 체험해 보세요. 주요 혜택은 다음과 같습니다.

  • New Project(새 프로젝트) 마법사에 PlatformIO 프로젝트 유형 추가.
  • platformio.ini 파일을 바로 사용할 수 있으므로 파일의 변경 사항을 추적하고 그에 따라 프로젝트 정보를 업데이트할 수 있습니다.
  • 디버그와 업로드 구성을 자동으로 생성
  • CLion에서 PIO 통합 디버거를 활용한 온칩 디버그 지원.
  • PlatformIO 도구 창에서 가장 자주 사용하는 명령어 및 프로젝트 액션을 빠르게 이용할 수 있습니다.
IAR

IAR 툴체인

임베디드 프로젝트에 IAR 컴파일러/툴체인을 사용한다면 CLion에서도 해당 기능이 지원됩니다. IAR 툴체인을 사용하는 프로젝트가 CLion에서 성공적으로 로드 및 작동됩니다.

아래 사항을 참고해주세요:

  • MinGW 필요
  • CMake 생성기로 Ninja 권장.
  • IAR 임베디드 작업 환경에서 CMake 활용 시 유용한 팁.
사용자 지정 컴파일러

사용자 지정 컴파일러

사용자 지정 컴파일러나 아직 CLion에 기본적으로 인식되지 않은 컴파일러를 사용하는 상황을 가정해보겠습니다. 임베디드 개발에서 자주 발생하는 상황이죠. 이제 컴파일러와 관련하여 필요한 모든 정보를 CLion에 설명하고 해당 컴파일러가 기본으로 지원되는 것처럼 사용하는 방식이 있습니다.

Settings(설정) | Build, Execution, Deployment(빌드, 실행, 배포) | Toolchains(툴체인) | Custom Defined Compiler(사용자 정의 컴파일러)로 이동하여 해당 방식을 활성화하고 사용자 지정 컴파일러의 정의가 포함된 *.yaml 파일을 제공하세요. CLion 팀에서 준비한 샘플 구성을 확인해 보세요.

MISRA

MISRA C 및 C++

CLion은 임베디드 개발, 특히 자동차 업계에서 광범위하게 사용되는 가이드라인인 MISRA C 2012MISRA C++ 2008에 대한 일부 지원을 제공합니다. 이 지원은 개발 주기 초기의 비호환성을 공개하여 이와 같은 프로젝트의 개발을 가속화할 것입니다. 현재 지원되는 검사는 CLion Confluence 페이지에서 확인하실 수 있습니다.

STM32CubeMX

STM32CubeMX 통합

STMicroelectronics 보드를 개발하는 경우, CLion이 이제 STM32CubeMX와 통합되어 보다 편리해졌습니다.

  • CLion은 새로운 .ioc프로젝트를 생성하거나 기존 프로젝트를 열수 있으며, CMake 파일을 생성하여 올바르게 작업을 할 수 있게 합니다.
  • CLion에서 언제든지 직접 STM32CubeMX를 시작하여 보드 설정을 업데이트하고 코드를 생성할 수 있습니다.
  • CLion은 보드 구성을 선택하도록 요청하고 UI에서 옵션 목록을 제안합니다.