플러그인은 몇 가지 프로세서에 대한 템플릿을 제공합니다. 템플릿이 제공되지 않는 프로세스를 위해 Cortex-M template을 사용하여 프로젝트를 생성하는 방법을 제공하고 있습니다.
Requirements
템플릿을 사용해서 프로젝트를 거의 완성할 수 있지만, device specific file들은 사용자가 직접 포함시켜야만 합니다.
생성된 프로젝트를 사용하기 전에, 다음과 같은 CMSIS vendor specific file들을 확인해야 합니다.
- CMSIS 헤더 파일 (for example stm32f4xx.h)
- CMSIS 시스템 헤더 파일 (for example system_stm32f4xx.h)
- CMSIS 시스템 소스 파일 (for example system_stm32f4xx.c)
- 인터럽트 벡터 (for example vectors_stm32f4xx.c)
처음 3개의 파일은 제조사 패키지에서 복사해 올 수 있습니다. 인터럽트 벡터들의 정의는 보통 어셈블리 파일로 되어 있습니다. 벡터의 이름을 확인해서, 그것들을 .c vectors 파일에 입력해 두는 것을 권장합니다.
Create a new project
- 이클립스 메뉴에서 File >> New >> C++ Project
- Executables group에서 Hello ARM Cortex-M C/C++ Project를 선택합니다.
코어 타입과 프로젝트 설정들을 선택합니다.
위의 모든 설정들은 프로젝트가 만들어진 이후에도 프로젝트 설정 메뉴 또는, Preprocesser 선언을 다르게 함으로써 변경할 수 있습니다.
폴더 이름을 지정합니다.
Vender CMSIS name 항목에는 DEVICE 대신에 제조사에서 제공하는 이름을 사용하는 것을 권장합니다
예를 들면, stm32f4-stdperiph.
Accept the default configuration names:
Define the toolchain name and path:
완성된 프로젝트는 다음과 같은 구조가 됩니다.
Copy vendor specific files
생성된 프로젝트에서 system/include/cmsis와 system/src/cmsis 폴더를 확인하고, vendor specific file들을 이 폴더에 복사해 넣습니다.
- CMSIS 헤더파일은 (for example stm32f4xx.h) system/include/cmsis 폴더에 복사해서 DEVICE.h 파일을 대체시킵니다.
- CMSIS 시스템 헤더파일은 (for example system_stm32f4xx.h) system/include/cmsis 폴더에 복사해서 system_DEVICE.h 파일을 대체시킵니다.
- CMSIS 시스템 소스파일은 (for example system_stm32f4xx.c) system/src/cmsis 폴더에 복사해서 system_DEVICE.c 파일을 대체시킵니다.
- 인터럽트 벡터는(for example vectors_stm32f4xx.c) system/src/cmsis 폴더에 복사해서 vectors_DEVICE.c 파일을 대체시킵니다.
메모리맵 확인하기
ldscripts/mem.ld 파일에 생성된 메모리맵을 확인하고, 디바이스와 일치하지 않다면, 수정합니다.
예를들면, flash origin 또는 ram origin.
'ARM' 카테고리의 다른 글
GNU ARM Eclipse : DOCUMENTATION : GENERIC STM32Fxx TEMPLATE (0) | 2015.02.16 |
---|---|
GNU ARM Eclipse : DOCUMENTATION : TEMPLATES (0) | 2015.02.16 |
GNU ARM Eclipse : DOCUMENTATION : TOOLCHAIN PATH (1) | 2015.02.16 |
GNU ARM Eclipse : DOCUMENTATION : PROJECT PORTABILITY (0) | 2015.02.16 |
GNU ARM Eclipse : DOCUMENTATION : PERIPHERAL REGISTERS (0) | 2015.02.16 |