[IoT]아두이노에 대한 기본 지식

meek·2023년 3월 27일
0

/*elice*/

목록 보기
14/21

🐢 MCU

  • Micro Controller Unit
  • 특정 기능을 제어하기 위한 저성능의 작은 장치
  • processor + memory + I/O
  • 임베디드 시스템
  • MCU는 특정 기능을 제어하기 위한 저성능의 작은 장치이고, 기능을 수행하기 위해서는 프로그래밍 및 기계 내 탑재가 필요하다.

🐢 아두이노

  • 손쉽게 장치들을 연결
  • 어렵지 않은 프로그래밍
  • 손쉬운 업로드 지원
    👉 상호작용하는 기기를 만들기 위한 오픈소스 프토로타이핑 플랫폼
  • 아두이노는 HW와 SW를 모두 포함하고 있음
    • HW : 손쉽게 장치들을 연결, 손쉬운 업로드 지원
    • SW : 통합 개발 환경, 함수와 라이브러리

🐢 아두이노 구조

🐢 아두이노 스케치

  • 스케치는 아두이노의 프로그램 이름
  • 업로드되고 실행되는 코드 단위
  • .ino 확장자로 저장
  • 한번에 하나의 스케치만 동작할 수 있음

🐢 스케치 구조

  • C/C++
    - setup/loop 기반으로 동작
  • setup
    - 준비 및 초기화 작업(변수 초기화, 통신 속도 설정 등)
    • 한 번만 실행
  • loop
    - 반복적으로 수행할 로직(주기적 센서 감지, 액츄에이터 구동 등)
    • 계속해서 반복 실행
//Blink.ino

void setup() {
	pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
	digitalWrite(LED_BUILTIN, HIGH);
    delay(1000);
    digitalWrite(LED_BUILTIN, LOW);
    delay(1000);
}
  • pinMode
    - 핀의 모드 설정 및 핀의 용도 설정
  • digitalWrite
    - 디지털 신호 사용, 핀에 디지털 신호 사용

🐢 digitalWrite

  • digitalWrite(핀, 디지털신호)
  • 아두이노SW 내에 이미 구현된 digitalWrite가 불려지고 그 내부의 로직들이 수행
  • 디지털 신호
    - HIGH, 1(5V)
    • LOW, 0(0V)

🐢 void pinMode

  • void pinMode(핀, 모드);
  • 핀 : 연결한 핀번호
  • 모드
    - INPUT
    • OUTPUT
    • INPUT_PULLUP
  • 핀의 사용 목적 설정

🐢 전류

  • 전하가 흐르는 속도

🐢 전압

  • 전하의 차이

🐢 저항

  • 전하의 흐름을 방해하는 힘

🐢 저항의 역할

  • 전류 제한
    - 특정 기기에 공급되는 전류를 제한하는 용도
  • 전압 분배
    - 저항을 직렬로 연결해서 전압을 분배

🐢 점퍼 케이블

  • 아두이노와 소자, 브래드 보드를 연결하여 회로를 구성

🐢 USB B-type 케이블

  • 아두이노와 PC를 연결
  • 아두이노에 프로그램을 심을 수 있게 해주고, PC와 시리얼 통신을 할 수 있게 해줌
  • 스케치 작성 > 스케치 업로드 > 프로그램 동작의 순서에서 스케치 업로드를 도와줌

🐢 시리얼 통신

  • 아두이노에서 지원하는 시리얼 통신
  • 시리얼 통신 방식으로 업로드를 지원
  • 시리얼 통신으로PC와 데이터를 주고 바을 수 있는 방법을 지원
  • Serial을 지원하여 시리얼 통신을 쉽게 사용 가능
profile
hello, world!

0개의 댓글