AVR
AVR은 1996년 Atmel 사가 개발한 8비트 데이터 프로세싱 범용 RISC 마이크로컨트롤러이다. 현재는 Atmel을 인수한 Microchip Technology[1]가 제조/판매하고 있다.
아두이노가 AVR MCU[2]를 채택하면서 대중들이 손쉽게 얻을 수 있는 RISC ISA 사용 마이크로컨트롤러가 되었다. CISC ISA의 인텔 8051보다 더 발전된 기능 덕에 수십 MHz의 클럭 신호로 동작하면서 간단한 장비 제어 정도는 너끈히 해낸다.
구조[편집 | 원본 편집]
하나의 중앙처리 장치에 펌웨어를 집어넣을 소용량 플래시 메모리가 통합된 DIP 패키징[3] 제품이 많으며[4] SPI 통신 규격에 Reset 핀을 붙이며 개조한 ISP라는 규격을 통해 프로그래밍한 펌웨어를 집어넣을 수 있다.
AVR의 아키텍처는 32개의 8bit 범용 레지스터와 프로그램 메모리(ATmega 뒤에 붙은 숫자만큼의 KB 용량을 가진다), 256KB 이상의 플래시 메모리, 데이터 메모리(16KB~32KB SRAM이 기본 제공되며, 별도의 외장 RAM 연결 가능), 10만 번 재기록 가능한 EEPROM 4KB, GPIO 핀들[5], 10~12bit ADC 및 12bit DAC 등이 내장되어 있다.
UART, I2C, CAN, SPI 등의 통신 인터페이스 규격을 지원하며 USB, 이더넷 컨트롤러도 있어서 범용 데이터 통신도 가능하다. LCD 컨트롤러도 지원하여 디스플레이 출력도 가능하여 고성능이 필요한 시스템의 제어를 제외한 거의 모든 종류의 장치 제어가 가능하다.
- ↑ 여기도 PIC라는 자체 마이크로컨트롤러 제품으로 유명하다.
- ↑ 아두이노 우노가 ATmega328을 썼으며 그 외의 다른 제품들도 AVR 아니면 ARM Cortex-M MCU를 채택한 경우가 많다.
- ↑ 칩 양쪽에 바로 입출력 핀들이 붙어있는 패키징 방식. DIP 패키징이 된 부품을 보면 꼭 지네나 노래기 같이 생겼다.
- ↑ 그 외에 ATmega128 같이 TQFP 패키징이 된 제품도 있다.
- ↑ Data Direction Register인 DDRx, Output Port인 PORTx, 신호 입력을 받는 PINx 등으로 제어를 받는다. 그리고 이들은 풀업 저항이 있어서 AVR MCU의 높은 내구도를 보장한다.