STM32 펌웨어 C++ 로 개발하기
STM32CubeIDE 에서 프로젝트에 적용할 컴파일러를 C 나 C++ 로 선택 가능하다.
C++ 컴파일러로 선택하면 C++, C 컴파일도 같이 이뤄지는 것이고 C 컴파일러로 선택되어있다면 C++ class 는 인지 하지도 못하는 순수 C 언어 컴파일만 가능하다.
STM32CubeIDE 의 프로젝트에 적용할 C/C++ 컴파일러 선택 방법
STM32CubeIDE 에서 생성되어있는 프로젝트 마우스 우 클릭 메뉴에서 Convert to C++ (아래 그림 붉은 라인) 이 보이면 현재 프로젝트 C 컴파일러가 선택되어있는 상태고, Convert to C++ 클릭하면 즉시 C++ 컴파일러가 적용된다.
반대로 현재 프로젝트의 컴파일러가 C++ 이 적용중이면 Convert to C 가 보인다.
소스파일 확장자를 cpp 로 해야 C++ 컴파일러 적용됨
앞에서 프로젝트에 적용할 컴파일러를 C++ 로 했다고 C++ 컴파일 되지 않으며 소스파일 확장자가 .c 이것은 C 컴파일하며 .cpp 파일은 C++ 컴파일 적용된다.
내 소스코드의 main.c 를 C++ 컴파일 하려면 파일명을 main.cpp 로 수정해야 한다.
main.cpp 에서 C++ class 시험 해봄
STM32CubeIDE 에서 자동생성된 main.c 파일을 main.cpp 로 수정하고 아래와 같이 C++ 클래스 구문들 작성하고 빌드해본 결과 정상 빌드확인함.
아래 코드 살펴보면 라인 57 에서 클래스 선언했고, 클래스 멤버 함수 void f() 를 라인 64 에서 정의했다.
main 진입하여 라인 79에서 클래스 인스턴스 동적 생성하고 , 라인 81 에서 멤버 함수 호출하고, 라인 83 에서 동적생성했던 클래스 인스턴스 제거.
빌드 콘솔창보면 오류없이 빌드 성공.
연관
상위정리
첫 등록 : 2023.07.06
최종 수정 :
단축 주소 : https://igotit.tistory.com/4683
'임베디드.일렉트로닉스' 카테고리의 다른 글
GH3220 . 심장 ECG PPG 측정 칩 (0) | 2023.07.10 |
---|---|
SFH2201 . 포토다이오드 . Enhanced Blue Sensitivity (0) | 2023.07.10 |
OLED 디스플레이 . 소형 . (0) | 2023.02.08 |
무선 충전 모듈 . 코일 (0) | 2023.01.31 |
블루투스 오디오 모듈 . 초저가 1,000원 ~ 2,500원 (0) | 2023.01.31 |
댓글