ARM이란 무엇일까? ARM은 ARM Holdings에서 설계하는 명령어세트(Instruction Set Architecture)의 총칭이다. ARM 기반 프로세서는 스마트폰 시장의 확대로 인해 누구나 알게 되었다.
대표적으로 컴퓨터 아키텍처는 CISC, RISC, VLIW로 나누어지지만 RISC와 CISC를 중점적으로 쓴다.
현재 이 글을 작성하는 노트북은 x86/64 기반 프로세서로 이루어져있으며 이는 대표적인 CISC 프로세서로 이루어져있다. CISC(Complex Instruction Set Computer)로 Complex라는 단어에서 알 수 있듯이 복잡한 명령어로 이루어져있다.
이와 반대로 ARM은 RISC(Reduced instruction set computer)로 CPU 명령어 세트를 가볍게 하기위해 CISC에 비해 적은 명령어세트로 구성되어있다.
자세한 이야기는 구글링하면 더 나온다. Embedded 연습을 위해 사용할 개발보드는 ARM Cortex-M3가 탑재된 ST마이크로사에서 만든 Nucleo-F103RB를 사용할 것이다.
Embedded 연습에 많이 쓰이는 아두이노의 Pin-out과 동일하게 설정할 수 있으며 Embedded에 일반적으로 쓰이는 배열의 Pin도 그대로 사용 가능하다.
Documentation
NUCLEO-F103RB - STMicroelectronics
개발의 시작은 공식 문서와 함께하는것이 좋다.
기본적인 Pin 배열은 이렇다. Nucleo-F103RB보드를 프로그래밍 하기위해서는 STM32CUBE IDE설치가 필요하다.
STM32CubeIDE - STMicroelectronics
다운로드는 해당 홈페이지에서 하고 운영체제에 맞는 IDE를 설치한다.
설치는 매우 쉬우니 다 해주면 된다.
실행하면 다음과 같은 화면이 나온다. 제일 왼쪽것을 선택한다.
Board와 Processor 을 고를 수 있는데 구매한 보드를 클릭한다.
Project명은 마음대로 설정
이거는 Yes누른다. Remember my decision해주어도 상관없다.
기본적인 개발환경
소프트웨어적으로 시스템의 클럭을 설정할 수 있다.
본격적인 가이드는 다음부터
'Embedded > STM32' 카테고리의 다른 글
STM32 Timer, PWM, HAL Control (0) | 2021.03.01 |
---|---|
STM32 외부 인터럽트 (1) | 2021.03.01 |