🐢 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)
🐢 void pinMode
- void pinMode(핀, 모드);
- 핀 : 연결한 핀번호
- 모드
- INPUT
- 핀의 사용 목적 설정
🐢 전류
🐢 전압
🐢 저항
🐢 저항의 역할
- 전류 제한
- 특정 기기에 공급되는 전류를 제한하는 용도
- 전압 분배
- 저항을 직렬로 연결해서 전압을 분배
🐢 점퍼 케이블
- 아두이노와 소자, 브래드 보드를 연결하여 회로를 구성
🐢 USB B-type 케이블
- 아두이노와 PC를 연결
- 아두이노에 프로그램을 심을 수 있게 해주고, PC와 시리얼 통신을 할 수 있게 해줌
- 스케치 작성 > 스케치 업로드 > 프로그램 동작의 순서에서 스케치 업로드를 도와줌
🐢 시리얼 통신
- 아두이노에서 지원하는 시리얼 통신
- 시리얼 통신 방식으로 업로드를 지원
- 시리얼 통신으로PC와 데이터를 주고 바을 수 있는 방법을 지원
- Serial을 지원하여 시리얼 통신을 쉽게 사용 가능