내장형 설계의 판도를 바꾼 1달러 미만 마이크로 컨트롤러
내장형 설계자로 수십 년 동안 경험을 쌓아온 저는 저가형 마이크로 컨트롤러의 발전에 놀라고 있습니다. 최근의 저가형 마이크로 컨트롤러를 보면 한 개에 1달러 미만에 판매되는 경우가 많습니다(훨씬 저렴한 것도 있음!). 이 글의 마지막 부분에 개당 1달러 미만인 마이크로 컨트롤러를 몇 가지 소개합니다.
하지만 이 글의 실제 목적은 저가형 마이크로 컨트롤러를 서로 비교하려는 것은 아닙니다. 이러한 마이크로 컨트롤러를 다른 대안 제품들과 비교하고자 합니다. 개발자들이 마이크로 컨트롤러로 처음 만드는 프로젝트가 점멸 LED인 경우가 많다는 점을 고려하면, 이러한 마이크로 컨트롤러를 유명한 555 타이머 칩과 비교하는 것이 적절할 것 같습니다. 555 타이머는 수십 년 전 출시되었을 때부터 점멸 LED의 필수 부품이었습니다.
이 장치는 1972년에 한 반도체 회사에서 처음 선보였습니다. 이 회사는 현재 존재하지 않지만 장치는 여전히 사용되고 있으며 Texas Instruments에서 만든 NE555D 타이머 칩을 1달러 미만에 구입할 수 있습니다. 이미 이 단가만 해도 아래에서 언급될 저렴한 마이크로 컨트롤러 가격과 비교가 됩니다. 게다가 555 타이머 칩으로 점멸 LED를 만들어 내려면 칩만으로는 불가능합니다. 저항기와 커패시터도 필요합니다. 마이크로 컨트롤러의 경우 추가 부품이 필요 없습니다.
46년 동안 전자 관련 간행물에서 555 타이머에 대한 많은 회로 설계 아이디어가 게시되어 왔음에도 불구하고 마이크로 컨트롤러가 훨씬 더 다양한 기능을 갖추고 있습니다.
의도된 작업을 안정적이고 효율적으로 수행해 내는 555 타이머는 항상 제 맘 속 우수 상품으로 남을 것입니다.
하지만 555 타이머 칩을 교체하고 점멸 LED를 만들어도 저렴한 마이크로 컨트롤러로 가능한 기능에는 미치지 못합니다. 마이크로 컨트롤러는 비교적 복잡한 내장형 시스템을 제어할 수 있고, 일부 전력 MOSFET의 도움을 받아 모터 제어에도 사용될 수 있습니다. 간단한 인간 기계 간 인터페이스(HMI)도 구현할 수도 있습니다.
아래 나열된 마이크로 컨트롤러 4개 모두에는 최소 8비트 분해능으로 ADC(아날로그 디지털 컨버터)를 구동하는 다채널 아날로그 입력 멀티플렉서가 포함되어 있습니다. 이 ADC는 많은 내장형 시스템의 아날로그 설계를 상당히 단순화할 수 있습니다.
이러한 저가형 마이크로 컨트롤러를 사용하면 아날로그 신호에서 디지털 신호로의 점프는 시스템의 신호 처리 체인에서 가능한 초기에 수행되어야 합니다. 다음은 몇 가지 MCU 옵션입니다.
Silicon Labs EFM8BB10F8G-A-QSOP24R
EFM8BB10F8G-A-QSOP24R 마이크로 컨트롤러는 Silicon Labs의 “Busy Bee” 장치 제품군에 속하며 우수한 8비트 8051 마이크로 컨트롤러 아키텍처를 기반으로 합니다. 이 제품군에는 8킬로바이트의 플래시 프로그램 메모리와 512바이트 RAM이 적용됩니다. 마이크로 컨트롤러는 8051 프로세서 코어의 파이프라인 버전을 사용하므로 명령어의 70퍼센트가 하나 또는 두 개의 클럭 주기로 실행되며 마이크로 컨트롤러는 25MHz에서 작동합니다. 주변 장치를 위해 EFM8BB10F8G-A-QSOP24R 마이크로 컨트롤러는 다음을 갖추고 있습니다.
- I2C
- SPI
- SMBus 포트
- UART
- PWM 생성기가 포함된 3채널 프로그래밍 가능 카운터/타이머
- 4개의 16비트 타이머
- 16 아날로그 입력 채널의 12비트 ADC
- 2개의 아날로그 비교기
이 모든 I/O 장치가 마이크로 컨트롤러의 24핀 QSOP 패키지에 들어갑니다. Silicon Labs는 Keil 컴파일러와 어셈블러, 디버거, IoT 앱 빌더, 에너지 프로파일러, 하드웨어 구성기 및 사전 빌드 데모가 포함된 Simplicity Studio 4 개발 제품군을 제공합니다.
Microchip Technology의 ATTINY84A-SSUR
ATTINY84A-MMH는 Microchip의(이전 Atmel) 8비트 AVR 마이크로 컨트롤러 제품군에 속합니다. 특히 이 장치에는 8KB 플래시 프로그램 메모리, 512바이트 EEPROM 및 512바이트 RAM이 있습니다. 8비트 AVR 아키텍처에는 120개 명령어(대부분 1 클럭 주기에서 실행)와 32바이트 레지스터 파일이 제공됩니다. 이 마이크로 컨트롤러는 20MHz에서 작동하며, 주변 장치를 위해 ATTINY84A-MMH 마이크로 컨트롤러는 다음을 갖추고 있습니다.
- 1개의 8비트 및 1개의 16비트 하드웨어 타이머/카운터
- 2개의 PWM 채널
- 8개의 단일 종단 아날로그 입력이 적용된 10비트 ADC
- 프로그램을 제어하는 프로그래밍 가능 감시 타이머
소프트웨어 개발 지원에는 C 컴파일러, 매크로 어셈블러, 프로그램 디버거 및 시뮬레이터, 평가 키트가 포함됩니다.
Microchip Technology의 PIC10F220T-E/OT
Microchip의 PIC 계열은 오랫동안 저가형 내장형 시스템 개발자들의 사랑을 받아왔습니다. Microchip의 PIC10F220 마이크로 컨트롤러에는 명령어용으로 256워드의 플래시 메모리(각 명령어 워드의 폭은 12비트)와 16바이트의 RAM이 포함됩니다. 이 마이크로 컨트롤러의 명령어 집합은 간단합니다. 33개의 명령어만 알면 되며 분기 명령어를 제외한 모든 명령어가 하나의 주기로 실행됩니다. 분기에는 2개의 주기가 필요하며, 명령어 주기는 8MHz 내부 클럭 사용 시 500나노초입니다. 6핀 장치이므로 주변 장치가 장치의 I/O 핀 4개에서 다중화됩니다. 주변 장치를 위해 PIC10F220T-E/OT는 다음을 갖추고 있습니다.
- 8비트, 실시간 클럭/카운터
- 외부 아날로그 입력 채널이 2개 포함된 8비트 ADC
- 최대 4개의 범용 I/O 핀
그림 1: Microchip의 PIC10F220T-E/OT 마이크로 컨트롤러는 I/O 핀 4개에서 여러 아날로그 및 디지털 기능을 다중화합니다. (이미지 출처: Microchip Technology)
Microchip의 MPLAB 개발 제품군에는 C 컴파일러, 어셈블러, 링커 및 개체 라이브러리가 포함됩니다.
Microchip Technology의 ATTINY10-TSHR
아주 저렴한 마이크로 컨트롤러를 찾는다면 Microchip의 ATTINY10-TSHR을 능가하는 것을 찾기 어렵습니다(그림 2). Microchip의 AVR 계열에 포함된 이 6핀, 8비트 마이크로 컨트롤러에는 다양한 장점이 있습니다. 장치의 54개 명령어 대부분은 1 클럭 주기로 실행되며 장치는 12MHz에서 작동합니다. 특히, 이 AVR 변형에는 하나의 1KB 플래시 명령어 메모리와 32바이트 RAM이 포함됩니다 6핀 장치에 이렇게 많은 I/O 지원이 포함된 것을 믿기 어렵지만 ATTINY10-TSHR 마이크로 컨트롤러는 4개의 I/O 핀에서 다음 주변 장치를 다중화합니다.
- 정전 용량 접촉 감지 1채널
- 2개의 PWM 채널을 가진 16 비트 타이머 / 카운터
- 별도 온칩 발진기가 있는 감시 타이머
- 4개 아날로그 입력이 있는 8비트 ADC
- 아날로그 비교기 1개
그림 2: ATTINY10-THSR 마이크로 컨트롤러는 네 개의 I/O 핀에서 다수의 주변 장치를 다중화합니다. (이미지 출처: Microchip Technology)
소프트웨어 개발 지원은 일반적인 컴파일러, 어셈블러, 링커 등이 포함된 Atmel Studio 7.0 도구 제품군을 통해 제공됩니다.
MCU부터 체험
마이크로 컨트롤러는 한때 고가였지만 이제는 아닙니다. 위에 나열된 네 가지와 같은 저가형 마이크로 컨트롤러 덕분에 이제 내장형 설계 방법론에 대한 생각이 완전히 달라졌습니다. 이제는 대부분의 저가형 설계에 마이크로 컨트롤러 이용을 먼저 고려한 다음, 사용하지 말아야 할 이유를 생각해 보는 것이 더 현명할 지경입니다.

Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.
Visit TechForum