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

STM32CubeMX 프로젝트 저장방법.(일관성 있는 프로젝트 폴더 관리 목적)

by i.got.it 2016. 2. 1.

 

 

개요

 

STM32CubeMX 프로그램에서 프로젝트 저장시 일관된 방식.

 

문제상황 - 프로그램의 일관성 없는 저장기능. 

예로 프로젝트명을 myProject 로 하고 싶다고 했을 때(즉, STM32CubeMX 의 프로젝트 이름도 myProject, KEIL 등의 IDE에서의 프로젝트명도 myProject )


STM32CubeMX 프로그램에서 제공하는 프로젝트 저장 기능이 아래 처럼 2곳에서 접근가능한데,

1. 메뉴->File -> "Save Project" 혹은 "Save Project As.."  를 이용한 프로젝트 저장.

2. 메뉴->Projects->Settings... 를 이용한 프로젝트 저장.


상기1의 방식으로 저장하게 되면 프로젝트 폴더 생성 사용자가 지정한 폴더 하위에 STM32CubeMX 프로젝트 파일 myProject.ioc 를 만들어준다. 이때 프로젝트명을 신규 폴더로 자동생성해주지는 않는다.

한편, 상기2의 방식으로 저장하면 지정한 폴더 하위에 프로젝트 이름과 동일한 myProject 폴더를 자동으로 만들고 그 속에 myProject.ico 를 만들어준다.

 

펌웨어 관리시 프로젝트 단위로 폴더가 만들어지고 하위에 모든 리소스들이 배치되는 방식이 선호되기 때문에 항상 2의 방식으로만 저장하는 방식으로 고정하도록 한다. 아래 상세 보임.

 

 

 

 

프로젝트 저장 방법 상세.

 

 

STM32CubeMX에서 신규로 프로젝트 만들고 저장시 아래 순서로 진행한다.

 

1. 프로젝트 저장시 "항상" 메뉴->Projects->Settings... 이용하여 저장한다.

(메뉴->File -> "Save Project"  는 사용하지 않도록 함.)

 

 

상기 Settings.. 클릭하면 아래처럼 새창이 뜬다.

 Project_Location (붉박)의 경로는 버튼 Browse 클릭하여 임의위치로 지정할 수 있다. Toolchain (파박) 은 사용자가 수정할 수 없게 되어있고, 항상 붉박에서 선택된것과 동일한 경로로 지정되게 되어있다. 이 폴더는 매번의 프로젝트 생성시 마다 변경하지 않고 항상 이 폴더를 사용하도록 한다. 즉, STM32CubeMX에서 생성된 모든 프로젝트는 단일한 폴더 (아래 예에서는 Work_STM32CubeMX) 하위에 몰아두려는 것이다. 

 

상기 Work_STM32CubeMX 폴더는 현재는 아래 처럼 비어있는 상태임.

 

2. Project Name 에 프로젝트 이름 기록.

myProject 를 기입하면 Toolchain 부분에도 자동으로 myProject 가 기입된다

 

위 상태에서 버튼 OK 클릭하면 아래 탐색기에서 보이듯이 myProject 폴더가 생성되고, 그 속에 myProject.ioc 파일이 저장된다.

 

 

3. Generate Code 실행.

이 상태에서 메뉴 -> Project -> Code Generate 눌러 코드 자동생성시켰을때 추가되는 항목들은 아래와 같다.

KEIL MDK-ARM 코드 리소스들이 붉은박스처럼 신규로 만들어지고 KEIL 프로젝트 파일은 MDK-ARM 폴더속에 myProject.uvprojx 라는 이름으로 만들어진다.

 

 

 

 

이후 새로운 프로젝트를 생성할때마다 위 방식대로 일관된 방식으로 하여, 프로젝트 폴더와 파일들이 뒤죽박죽 되는 사태가 생기지 않도록 한다.

 

 

 본 글이 포함된 상위 정리장소 : http://igotit.tistory.com/244

 

 



첫글등록 : 2016년 2월 1일.

최종수정 : 


본글단축주소 : https://igotit.tistory.com/649







댓글



 

비트코인




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