개요 | |
타겟 MCU STM32 펌웨어 프로젝트 생성시 SW4STM32 에서도 작업가능하고 , 동일 프로젝트를 KEIL MDK-ARM 에서도 작업가능하게 프로젝트 멀티 IDE 환경( 폴더 및 STM32CubeMX 에서 프로젝트 생성등 ) 구축 방법 정리. SW4STM32, KEIL MDK-ARM 동시 개발환경 필요성.- SW4STM32의 컴파일러와 KEIL MDK-ARM 의 컴파일러가 다르고, 동일 소스임에도 컴파일러에 따라 다른 작동을 보여주는 경우도 간혹 있다. 2개 컴파일러 중 더 만족스러운 동작을 보이는것을 최종 활용할 목적 혹은 2개 IDE모두 오류없는 소스코드의 완성도 높일 목적. - KEIL MDK-ARM 은 유료 툴이고 가격도 비싼 편이다. 팀내 다른 사람이 이미 MDK-ARM 라이센스 모두 사용 중에도 코드 편집 및 시험은 무료인 SW4STM32 에서 진행가능하다. | |
|
멀티 프로젝트 폴더 구성 상황. | |
루트 폴더 - 폴더이름 : WORK_MultiSTM32CubeMX - STM32 프로젝트 폴더들 담아둘 용도임. - 폴더 이름이야 뭘하든 무방하나, 이후 해당 폴더를 볼때 이 폴더 속의 것들은 멀티(KEIL MDK-ARM 과 SW4STM32) 개발환경임을 바로 인지 가능한 것이 좋다. STM32 프로젝트 폴더 구성 예.- 루트 폴더에 STM32 프로젝트 폴더 D1F120 의 폴더 구성은 아래 그림과 같다. 위와 같은 폴더 구조인 상황에서 KEIL MDK-ARM 에서 프로젝트 오픈하고 동시에 SW4STM32 에서 오픈하는 상황을 아래 동영상에 보이고 있다. - KEIL MDK-ARM 은 프로젝트 파일인 D1F120.uvprojx 를 더블 클릭하면 KEIL MDK-ARM 이 실행되면서 프로젝트 오픈된다. - SW4STM32 로 프로젝트 열려면 SW4STM32 를 먼저 실행하면서 work space 폴더를 우리의 WORK_MultiSTM32CubeMX 를 지정하는 방식으로 프로젝트 D1F120 에 접근가능하다 (SW4STM32가 이클립스 기반이라 이클립스와 동일함.). KEIL MDK-ARM 과 SW4STM32 에서 동일 프로젝트 오픈했을때 프로젝트 탐색기에 보이는 모습. - 프로젝트 파일 관리 방식이 2개의 IDE가 다르므로, 프로젝트 탐색기에서 보이는 모습은 차이가 난다. - KEIL MDK-ARM 은 실제 폴더 구조와는 무관하게 추상적인 폴더구조를 IDE에서 생성하여 관리가능한 형식이고, SW4STM32 는 실제 탐색기에서 보이는 폴더구조를 그대로 Project Explorer 에서 보이는 식으로 관리된다(즉, 이클립스 관리 형식임). - 보이는 모습만 차이가 날 뿐 우리의 소스파일들은 모두 온전히 공유되고있다. - 2개 IDE 동시에 오픈한 상태에서 동시에 편집해도 된다. 어느 한 IDE에서 수정하여 저장하게 되면 다른 IDE 에서도 그대로 반영된다. - 그러나, 편집을 동시에 2개 IDE열고 작업할 필요는 없다. 혼선발생하여 헷갈린다. 1개 IDE 로만 작업하고 닫고 나서 다른 IDE 에서 프로젝트 오픈하여 작업하는 식으로 운영하는게 간결하다. KEIL MDK-ARM 과 SW4STM32 에서 동시 빌드 가능.- 동시에 빌드 가능하다. 아래 동영상에서 동일 프로젝트를 2개 IDE 에서 오픈한 상태에서 동시 빌드하는 상황을 보이고 있다.
| |
|
SW4STM32 / KEIL MDK-ARM 멀티 개발환경 구축 방법 상세 | |
앞의 박스글에서 멀티 개발환경 구축 완료된 상태의 모습이었다. 본 박스글에서는 멀티 개발환경을 구축하는 방법 상세정리한다. 상황예 : "신규" STM32 프로젝트 만드는데 SW4STM32, KEIL MDK-ARM 동시 개발 가능 한 프로젝트 폴더 (폴더명 예: D1F117) 만들려고 함. 단계1. STM32CibeMX 에서 프로젝트 생성.- STM32CubeMX 실행하여 메뉴 -> Project -> Settings... 클릭하여 신규 프로젝트 명 D1F117 할당 저장한다. 저장시 WORK_MultiSTM32CubeMX 하위를 선택하면 프로젝트명과 동일한 이름의 폴더 생성된다. (본 단계1의 요점은 메뉴 -> Project -> Settings... 클릭 하여 생성한다는 것임 . 왜? 상세 -> https://igotit.tistory.com/649 ) 단계2. IDE 별 코드 생성.- KEIL MDK-ARM 용 생성 : STM32CubeMX 에서 KEIL MDK-ARM 선택하여 생성한다. - SW4STM32 용 생성 : STM32CubeMX 에서 SW4STM32 선택하여 생성한다. - 방법상세: https://igotit.tistory.com/1975 - 위 2개 모두 충돌없이 개별적으로 생성되며 KEIL 에서도 작업가능하고, SW4STM32 에서도 작업 가능한 프로젝트 폴더가 만들어진 것이다. | |
|
첫글등록 : 2018년 11월 27일.
최종수정 : 2018년 12월 12일.
/// 본글 단축주소 https://igotit.tistory.com/1919
'임베디드.일렉트로닉스 > STM32' 카테고리의 다른 글
STM32. L4x6. ADC ( Analog to Digital Converter ) (0) | 2018.12.08 |
---|---|
SW4STM32. 사용자 정의 소스 경로 추가방법. (0) | 2018.11.28 |
STM32.L4x6시리즈 내장 플래시 (0) | 2018.11.12 |
조합. nRF24L01+ . STM32L4 (0) | 2018.06.02 |
STM32L4x6. GPIO 일반. (0) | 2018.05.05 |
댓글