바위 뚫는중

[Arduino] 마이크로 컨트롤러와 아두이노, IDE 설치 본문

Arduino

[Arduino] 마이크로 컨트롤러와 아두이노, IDE 설치

devran 2023. 3. 4. 20:04
반응형

마이크로컨트롤러, MCU

Microcontroller 또는 MCU(Microcontroller unit)은 마이크로프로세서와 입출력 모듈을 하나의 칩으로 만들어 정해진 기능을 수행하는 컴퓨터, 칩 위의 컴퓨터

  • 하나의 칩으로 구현한 컴퓨터
  • 중앙 처리 장치 + 메모리 + HDD (하드디스크드라이브)+ 입출력 인터페이스 + etc,,
  • 데스크톱 컴퓨터의 본체와 기본적으로 동일한 구조를 갖고, 동일한 동작을 수행
  • 전원만 주어지면 컴퓨터로 동작 가능
  • 입력장치와 출력장치를 연결함으로써 컴퓨터와 동일하게 동작

마이크로프로세서 (uP)

  • 컴퓨터의 중앙 처리 장치(CPU)를 하나의 칩으로 구현한 반도체 소자
  • 디지털 데이터를 입력받고, 메모리에 저장된 지시에 따라 그것을 처리하고, 결과를 출력으로 내놓는 다목적의 프로그램 가능한 기기
  • 최초의 마이크로프로세서: 인텔 사의 4004, 1969년 발표된 4비트 마이크로프로세서

마이크로컨트롤러 (uC)

  • 메인보드 + 일부 HDD 기능
  • 싱글 칩 컴퓨터 (Single Chip Computer) : 컴퓨터 본체에 해당하는 기능을 하나의 칩으로 구현
  • 작고 가벼운 마이크로 제어장치 구성을 위해 사용되는 특화된 마이크로프로세서의 일종
  • 입출력 장치를 연결함으로써 완전한 컴퓨터로 동작 가능, 간단한 제어 장치를 위해 특화된 컴퓨터

마이크로컨트롤러의 사용 예시

  • 의료기 제어, 자동시 심박계, 신호등 제어, 출입/침입 감시/ 에어컨, 세탁기, 게임기 등등

마이크로컨트롤러 프로그램 개발 과정

교차 개발 환경

  • 프로그램 개발은 데스크톱 컴퓨터 (개발 시스템)에서 진행
  • 개발 시스템은 마이크로컨트롤러 (목적 시스템)에서 실행되는 기계어 파일을 생성할 수 있는 교차 컴파일러 사용
  • 개발된 기계어 파일은 전용 장치를 사용하여 목적 시스템으로 업로드

아두이노

  • 2005년 이탈리아 이브레아 예술가와 디자이너를 위한 마이크로컨트롤러 프로젝트로 시작됨
  • 오픈 소스를 기반으로 한 단일 보드 마이크로컨트롤러로 완성된 보드와 관련 개발 도구 및 환경
  • 아두이노는 하드웨어와 소프트웨어를 함께 지칭
    • 아트멜의 AVR 시리즈 마이크로컨트롤러 + 프로그램 개발을 위한 전용 라이브러리를 포함하는 개발 환경
  • 아두이노 하드웨어는 마이크로컨트롤러 보드의 일종
    • 아두이노 보드라고도 함
    • 마이크로 컨트롤러(AVR uC) + 커넥터 + etc,,
  • 아두이노의 하드웨어와 소프트웨어는 모두 오픈 소스 정책에 따라 공개되어 있음

아두이노 보드의 종류 - 핀 헤더의 유무

  • 핀 헤더 있는 보드 : 고육 & 개발 용
  • 핀 헤더 없음 : 제품 적용 용

아두이노 우노

  • 아두이노 보드 중 가장 기본이 되는 보드, 거의 표준이 됨
  • 8 bit CPU 포함
  • 20개의 디지털 입출력 핀 사용 가능
    • 0~19번까지 핀 단위의 번호 지정
    • 6개의 핀으로 PWM 신호 출력 가능
      • 3,5,6,9,10,11 번 핀
  • 6개의 아날로그 입력 핀 사용 가능
    • 14~19번까지 디지털 입력 핀과 동일
    • 10bit ADC 사용(0~1023의 양자화된 값)
      • DAC는 포함되어 있지 않으므로 아날로그 값은 출력이 불가

아두이노 IDE 설치

www.arduino.cc

위의 링크를 통해 IDE 설치

스케치 구조

  • C/ C++을 기반으로 함
  • main 함수는 없음
    • 숨겨져 있으므로 신경쓰지 말고 구현
  • 2개의 기본함수로 구성됨
    • setup함수
      • 초기화 함수, 스케치 실행이 시작될 때 한번만 실행
    • loop 함수
      • 반복 실행 함수, uC를 위한 프로그램에서 메인/이벤트 루프에 해당
반응형