마이크로컨트롤러, 마이크로컨트롤러 보드 마이크로컨트롤러 보드 = 마이크로컨트롤러 + 마이크로컨트롤러 마이크로컨트롤러 보드
마이크로컨트롤러 칩 위의 컴퓨터 하나의 칩으로 구현한 컴퓨터 중앙 처리 장치 + 메모리 + HDD + 입출력 인터페이스 + 데스크톱 컴퓨터의 본체와 기본적으로 동일한 구조를 가지며 동일한 동작을 수행함 전원만 주어지면 컴퓨터로 동작할 수 있음 입력장치와 출력장치를 연결함으로써 컴퓨터와 동일하게 동작
마이크로컨트롤러 = 메인보드 + 일부 HDD 기능 컴퓨터의 구성 요소 마이크로컨트롤러 = 메인보드 + 일부 HDD 기능
마이크로프로세서, 마이크로컨트롤러 마이크로프로세서 (uP) 마이크로컨트롤러 (uC) 컴퓨터의 중앙 처리 장치(CPU)를 하나의 칩으로 구현한 반도체 소자 최초의 마이크로프로세서 Intel 사의 4004 1969년 발표된 4비트 마이크로프로세서 마이크로컨트롤러 (uC) 메인보드 + 일부 HDD 기능 싱글 칩 컴퓨터 (Single Chip Computer) 작고 가벼운(마이크로, micro) 제어장치(컨트롤러, controller) 구성을 위해 사용되는 특화된 마이크로프로세서의 일종
uP와 uC 사용 시스템 비교 항목 아두이노 메가2560 데스크톱 컴퓨터 CPU ATmega2560 Intel Core i7 비트 8 64 메모리 256 KByte 8 GByte 클록 16 MHz (싱글 코어) 3.4 GHz (쿼드 코어) 시스템 가격 약 25,000원 (ATmega2560) 약 1,000,000원
마이크로컨트롤러 사용 예 분야 사용 예 의료 의료기 제어, 자동 심박계 교통 신호등 제어, 주차장 관리 감시 출입자/침입자 감시, 산불 감시 가전 에어컨, 세탁기, 전자레인지 음향 CD 플레이어, 전자 타이머 사무 복사기, 무선 전화기 자동차 엔진 제어, 충돌 방지 기타 게임기, 차고 개폐 장치
uC를 위한 프로그램 개발 과정 교차 개발 환경 프로그램 개발은 개발 시스템(데스크톱 컴퓨터)에서 진행 개발 시스템은 목적 시스템(마이크로컨트롤러)에서 실행되는 기계어 파일을 생성할 수 있는 교차 컴파일러 사용 개발된 기계어 파일은 전용 장치를 사용하여 목적 시스템으로 업로드
프로그램 업로드 방식 ISP (In System Programming) 방식 시리얼 방식 SPI 시리얼 통신 사용 uC의 메모리에 직접 프로그램 기록 AVR 마이크로컨트롤러에서 주로 사용하는 방식 시리얼 방식 UART 시리얼 통신 사용 부트로더를 통해 uC의 메모리에 프로그램 기록 아두이노에서 주로 사용하는 방식
uC는 정말 필요한가? - 자동 점등 회로 uC 없이 ‘하드웨어’로 구현 uC 사용 ‘하드웨어 + 소프트웨어’로 구현
uC 사용의 장단점 단점 장점 점등 회로의 경우 하드웨어로만 구현하는 방식에 비해 장점 없음 마이크로컨트롤러 기능을 100% 사용하지 않음 별도의 소프트웨어(펌웨어)를 구현해야 함 장점 기능을 변경 또는 추가하는 경우, 동일한 입출력을 사용한다면 소프트웨어 변경 만으로 가능 마이크로컨트롤러의 가격이 지속적으로 하락하고 있으므로 기능을 100% 사용하지 않는 경우에도 소형화, 경량화, 초기 개발 시간 단축, 유지보수 비용 절감 등의 장점으로 경쟁력 확보 가능
맺는말 마이크로컨트롤러는 작고 단순한 컴퓨터 컴퓨터의 본체에 해당하는 기능을 하나의 칩으로 구현 (single chip computer) 전원만 주어지면 동작 단, 컴퓨터와 마찬가지로 프로그램이 설치되어 있어야 함 입출력 장치를 연결함으로써 완전한 컴퓨터로 동작 가능 간단한 제어 장치를 위해 특화된 컴퓨터 낮은 사양으로 데스크톱 컴퓨터와 비교할 수는 없음