1. MCU란 무엇인가?
MCU(Microcontroller Unit)는 말 그대로 작은 컴퓨터다.
우리가 사용하는 임베디드 기기 대부분은 이 MCU를 중심으로 동작하며, 센서 신호를 받아 처리하고, 외부로 명령을 내리는 두뇌 역할을 한다.
1.1 MCU의 구성 요소
MCU는 아래의 구성 요소를 하나의 칩에 통합한 시스템이다:
- CPU (중앙처리장치): 연산과 명령 실행
- Flash 메모리: 프로그램 코드 저장 공간
- RAM: 프로그램 실행 중 임시 데이터 저장
- GPIO: 입출력 핀 (센서, 릴레이, LED 등 연결)
- ADC/DAC: 아날로그 → 디지털 변환 등 신호 처리
- 통신 인터페이스: UART, I2C, SPI 등 외부 기기 연결
1.2 Cortex-M 계열이란?
많은 임베디드 기기는 ARM사의 Cortex 시리즈의 코어가 들어있는 MCU를 사용하고 있다.
ARM사는 MCU에 들어가는 코어(CPU 라고 할 수 있다.)를 저작권 형태로 판매하고,
다양한 회사들이 이를 구매해 탑재시킨 후 본인들의 입맛에 맞는 MCU를 개발하여 판매한다.
다시 말하면 많은 MCU에서 ARM사의 Cortex 시리즈 코어를 사용하고 있고, 이를 Cortex 계열 MCU라고 한다.
내가 사용하는 보드가 Cortex-M3 계열이라면, 이는 ARM사에서 만든 저전력, 고성능 MCU 설계 규격을 따른다는 의미다.
1.2.1 주요 특징
- Thumb-2 명령어: 코드가 작고 실행 속도 빠름
- NVIC (Nested Vectored Interrupt Controller): 인터럽트 처리 속도 우수
- SysTick 타이머: 주기적인 작업 타이밍에 사용
- 디버깅 인터페이스(DAP): 펌웨어 디버깅 용이
1.2.2 Cortex 기반 MCU
제조사 | 시리즈 | Cortex | 특징 요약 |
ST | STM32F0~F7, H7 | M0~M7 | 국내에서 가장 널리 사용됨. 풍부한 개발툴 |
NXP | LPC 시리즈 | M0~M7 | 소형 저전력부터 고성능까지 다양 |
Nordic | nRF51, nRF52 | M0, M4 | 저전력 + BLE 통신에 강함 |
TI | Tiva-C, MSP432 | M4, M4F | 전력 제어, 산업용 기기 적합 |
Renesas | RA 시리즈 | M0+, M3~M33 | 일본 계열, 저전력 + 보안 기능 강점 |
1.3 일반 PC와 MCU의 차이
일반 PC | MCU | |
목적 | 범용 연산 | 특정 기능 수행 |
OS | Windows, Linux 등 | Bare-metal / RTOS |
입력장치 | 키보드, 마우스 | 센서, 버튼, 릴레이 등 |
실행 방식 | 다양한 앱 동시 실행 가능 | 단일 루프, 인터럽트 중심 |
소비 전력 | 수십 W 이상 | 수 mW ~ 수백 mW |
1.4 실제 적용 사례
- Cortex-M0: 저전력 센서, 웨어러블
- Cortex-M3/M4: 일반 IoT 기기, 실시간 제어용
- Cortex-M7: 복잡한 신호 처리 (예: 오디오 처리)
내가 다루는 보드가 M3 계열이라면, 이 중간 레벨에서 속도와 실시간 처리의 균형을 잡은 적절한 선택이라 볼 수 있다.
참고자료
Processors
developer.arm.com
'TIL > Embedded' 카테고리의 다른 글
[임베디드] UART란 무엇인가? (기초 통신 프로토콜) (0) | 2025.05.25 |
---|---|
[임베디드] GPIO란 무엇인가? 2 (1) | 2025.05.23 |
[임베디드] 임베디드 시스템이란? (0) | 2025.05.23 |
[임베디드] ADC / UART / I2C (0) | 2025.05.20 |
[임베디드] 하이퍼터미널 통신속도(Baud Rate) 설정 (0) | 2025.05.17 |