개요. | |
본 글은 KEIL uVision 5 (KEIL MDK-ARM)에서 프로젝트 생성하는법과 main.c 를 만들어 두는 것까지 정리한다.
예로 사용되는 대상칩은 STM32F407Z로 한다. | |
1. KEIL uVision 5 에서 프로젝트 생성하기. | |
단계1. 새프로젝트 만들기 시작. keil uVision 을 실행한후, 메뉴 -> Project -> New uVision Project... 를 클릭하면 새로만들 프로젝트를 저장하기 위한 대화상자가 뜬다. 여기서 폴더를 사용자가 직접임의로 만들고(본 예에서는 myproject ) 그 폴더내 프로젝트명칭 (본 예에서는 myproject)로 하자. - 아래 그림참조. 폴더 myproject 에 프로젝트명 myproject 로 생성해서 저장하려는 중이다.
단계2. 타겟칩 선택. 앞의 1에서 프로젝트 저장버튼 누르고 나면 개발 대상 MCU 를 선택하는 대화상자가 뜬다. 여기서 우리가 개발할 대상칩은 STM32F407ZG이므로 아래 트리뷰에서 해당칩을 선택하고 OK버튼 클릭.
단계3. Manage Run-Time Environment 설정. 앞의 2에서 OK버튼 클릭하면 아래와 같이 Manage Run-Time Environment 창이 뜨고 사용자가 알아서 선택하라는 것이다. 이것은 일종의 개발자의 편의성을 주겠다고 미리 만들어진 라이브러리 같은 것이다. Manage Run-Time Environment 는 프로젝트 생성 후에도 설정 가능한 것이므로 이 단계에서는 선택하지 않고 진행해도 된다. 일단 아무것도 선택하지 말고 OK버튼 클릭.
단계4. 기본프로젝트는 생성완료됨. 앞의 3에서 OK버튼 클릭하면 기본프로젝트 생성완료상태다. 아래 그림과 같다.
프로젝트 골격만 만들어져 있다. main.c 등도 없고, 심지어는 타겟칩의 레지스터 주소 맵이 기록된 헤더파일도 없다. 프로젝트 명칭도 내가 만든 myproject 라는 이름을 보여주지 않고 Target 1 이라는 것으로 보여주고 있다. Target 1 같은 이름은 그냥 그대로 둬도 된다. 임의로 바꿔도 된다. 이후 할일 첫번째
고전적인 방식의 개발방법론은 통상 레지스터 주소의 명칭대응관계 헤더파일을 소스코드에서 포함시기 위해 해당 헤더파일을 찾아서 프로젝트에 포함시키고, main.c 파일내에서 인클루드 시키는 등등의 순이었다.
그러나, 아래 2번 설명할 내용은 개발툴 내에서 미리 만들어진 코드라이브러리들을 활용하기 위한 수단들이 제공되고 있고, 우리는 이를 활용하는 방법에 익숙해져야한다. 그래서, Manage Run-Time Environment (RTE 라는 약어를 사용함.) 를 실행시켜서 원하는 것을 선택하는 작업을 한다.
| |
끝 - KEIL uVison 5 에서 프로젝트 생성하기. |
2. 코딩 진행 하기위한 준비사항 | |
단계1. RTE(Run-Time Environment)에서 선택하기.
앞의 1 프로젝트 생성 단계3 Manage Run-Time Environment 에서 우리는 아무것도 선택하지 않았었는데, 여기서 우리에게 필요한 코드들을 포함시키는 선택작업을 해줘야한다.
이 작업은 프로젝트가 생성된 이후에도 가능하며, 추가 삭제가 자유롭다. 메뉴 -> Project -> Manage -> Run-Time Environment 클릭하여 뜬 대화상자에서 Device -> Startup 의 체크 박스를 선택하라. 시작하기위해 항상 필수에 해당하는 것이다.
위 그림에서 왼쪽 아래 느낌표 뜬 것은 비정상상태임을 보여주는 것이다. 현재 보이는 것이 의미하는 바는 Startup을 사용하기 위해서는 연계된 ARM::CMSIS:CORE 도 선택하라는 의미이다. 즉, 왼쪽 아래 Validation Output 에 아무것도 보이지 않아야 정상적으로 선택된 것이므로 여기서 선택하라고 되어있는것은 모두 선택하면된다. 선택하고 OK버튼 클릭해. 그럼 우리의 프로젝트에는 자동으로 아래처럼 코드들이 추가된다. 아래 붉은박스속이 추가된 코드 들이다.
단계2. main.c 추가하기.
그럼 우리 프로젝트에 main.c가 추가된다. 기본 코드 작성. 아래그림 오른쪽 붉은 박스 처럼 기본 골격 코드 만들면됨. int main(void) {
while(1) {
} } 이 상태에서 메뉴 -> Project -> Build Target 클릭하여 빌더 시켜봄. 아래 처럼 정상적으로 빌드 됨을 알 수 있다.
이후 본격 코드 구현 진행한다. | |
끝. - 초기생성된 프로젝트에 사용자 코딩 진입하기 위한 가장 기본 설정. |
본 글이 포함된 상위 정리장소 : http://igotit.tistory.com/244
|
155.
'임베디드.일렉트로닉스 > STM32' 카테고리의 다른 글
STM32F429 디스커버리 보드. - STM32 개발보드. (0) | 2014.10.28 |
---|---|
STM32F401 디스커버리 보드. - STM32 개발보드. (0) | 2014.10.28 |
STM32F407 디스커버리 보드. - STM32 개발보드. (0) | 2014.10.28 |
이클립스 기반 STM32 프로젝트 생성,코딩방법 개념잡기. (0) | 2014.10.27 |
STM32 개요 (0) | 2014.10.22 |
댓글