본문 바로가기

아두이노

아두이노 입력 이해하기 아두이노에서 입력은 센서와 같이 외부환경에 대한 값을 아두이노로 보내는 값이라고 생각하면 쉽다. 입력하는 방법은 다양한데, 입력부품을 이용하거나 또는 시리얼모니터를 통해 데이터 값을 입력 받을 수도 있다. 여기에서는 입력 부품에 대해서 입력하는 방법을 알아본다. 아날로그 입력과 디지털 입력 전자 부품(입력부품)에 따라 아날로그 입력으로 받을 지 디지털 입력으로 받을 지 구분해서 코드를 작성해야 한다. 아래에 주로 아날로그/디지털로 입력받는 부품들을 표로 정리해두었다. 입력방법 구분 아날로그 입력 디지털 입력 가변저항 조도센서 온도 센서 거리 센서 가속도 센서 압력 센서 스위치 기울기 센서 인체 감지 센서 적외선 거리 센서 (라인 감지센서) analogRead digitalRead 아두이노 우노에서 아날로.. 더보기
아두이노 키워드와 연산자 아두이노 프로그램에서 코드를 작성하다보면 색이 변하는 곳이 있는데 특정 키워드거나 역할을 하는 코드이기 때문이다. 변수나 함수 이름으로 사용할 수 없는 키워드들을 알아두어야 오류가 나지 않는다. 키워드(예약어) 내부에 미리 선언된 문자열이며 키워드는 식별자로 사용할 수 없다. 여기서 식별자란 사용자가 변수나 함수 이름 등을 직접지은 것으로 식별자의 첫문자는 알파벳이나 밑줄(_)이어야 한다. 올바른 예 : x, y, x100, _2 틀린 예: 0xy, int, 'xy 키워드는 아두이노 폴더의 lib -> keyword.txt 파일에 있다. 다른 기능을 사용할 때 불러오는 라이브러리에도 키워드가 있다. 대표적인 키워드 키워드명 의미 키워드명 의미 HIGH 5V 설정 char 문자 선언 LOW 0V 설정 ne.. 더보기
아두이노에서 변수 사용하기 아두이노 프로그램에서 변수는 자주 사용하게 되는데 Blink 예제를 이용해서 변수를 알아보자. 변수 변수는 어떤 값을 기억하는 것이라고 생각하면 되는데 데이터형에 따라서 기억할 수 있는 내용이 다르다. 아두이노 데이터형 형 용량 내용 값 boolean 1바이트 참,거짓 true(=1) 또는 false(=0) char 1바이트 문자(아스키코드) -128 ~ 128 byte 1바이트 바이트 0 ~255 int 2바이트 정수 -32,768 ~ 32,767 unsigned int 2바이트 부호가 없는 정수 0 ~ 65,536 long 4바이트 long 정수 -2,147,483,648 ~ 2,147,483,647 unsigned long 4바이트 부호가 없는 long 정수 0 ~ 4,294,967,295 floa.. 더보기
Blink 예제로 배우는 아두이노 기본 코드 아두이노 프로그램을 설치하면 기본 예제가 같이 설치되는데, 여기서 Blink 예제를 통해서 아두이노 기본 코드를 이해하려고 한다. Blink 예제 열기 예제를 열기 위해서 아두이노 IDE 프로그램을 실행한다. 파일 > 예제 > Basics > Blink 순서대로 클릭하면 된다. 전체 코드 분석 먼저 Blink 예제 전체 코드를 확인한다. /* Blink Turns an LED on for one second, then off for one second, repeatedly. Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO it is attached to digital pin 13, on MKR1000 on pin .. 더보기
아두이노를 시작할 때 알아두면 좋은 점 아두이노를 잘 다루려면 프로그래밍을 잘 알아야 한다. 프로그래밍을 잘 이해하고 있어야 문제가 생겼을 때 디버깅에 많은 시간을 허비하지 않는다. 아두이노 프로그래밍 언어는 C언어 계열로 객채지향 언어인 C++를 기준으로 한다. 아두이노 IDE(통합 개발 환경)는 프로그래밍 언어의 문법에 맞게 오류 처리를 수행하고 기계어로 컴파일을 한 후에 아두이노 보드에 업로드해서 동작하게 한다. 아두이노 동작 방식 아두이노 보드는 다른 보드들과 마찬가지로 CPU와 메모리, 인터페이스(외부와 연결하는 부분)로 되어있다. 아두이노의 메모리는 휘발성인 일시 기억 메모리와 비휘발성인 고정 기억 메모리, 부트로더가 있다. 일시 기억 메모리 => 컴파일된 실행 파일이 저장 고정 기억 메모리 => 프로그램 등을 쌓아두는 메모리(전원.. 더보기
아두이노 기본 준비하기 아두이노는 보드와 통합 개발 환경(IDE : Integrated Development Environment) 모두를 가리킨다. 아두이노 보드는 하드웨어이고 통합 개발 환경은 소프트웨어이다. 아두이노 기본 지식 아두이노를 다루기 앞서 하드웨어와 소프트웨어에 대한 이해가 필요하다. 하드웨어(HW: Hardware) 쉽게 설명하자면 손으로 만질 수 있는 장치들을 말합니다. 모니터, 마우스, 아두이노 보드 등이 여기에 속합니다. 하드웨어 장치들은 소프트웨어를 통해서 제어할 수 있습니다. 소프트웨어(SW: Software) 하드웨어와는 반대의 개념으로 손으로 만질 수 없는 명령어들을 말합니다. 컴퓨터 프로그램, 데이터 등 컴퓨터로 처리되는 모든 정보를 말합니다. 준비 사항 하드웨어적으로 아두이노를 이용해서 무언가.. 더보기
아두이노 기초, 기본 지식 이해하기 지금 아두이노는 사람들이 가장 많이 다루고 쉽게 다루는 개발보드이다. 관심이 높아지면서 많은 사람들이 아두이노로 소자를 사용하는 방법들에 대해서 설명하고 있지만 전문적인 이해가 필요하거나 반대로 너무 짧거나 간단하게 설명되어 있어서 이해하거나 응용하는데 어려움이 있다. 그래서 아두이노를 다루면서 이해한 내용을 정리해서 올리려고 한다. 일단 첫번째는 아두이노의 기본 이해이다. 아두이노 기본 지식 아두이노는 '작은 컴퓨터'라고 생각하고 동작과정을 이해하고 있으면 좀 더 쉽게 받아들일 수 있다. 동작과정을 입력, 처리, 출력 이렇게 세가지로 구분한다. 센서와 같은 입력 기기로 들어온 데이터(값)을 받아서 입력된 프로그램에 의해서 모터 또는 LED 같은 출력 기기로 동작한다. 아두이노는 부품들을 입출력 포트에 .. 더보기
아두이노+앱인벤터+블루투스 모듈(HC-06)로 글자 주고 받기 블루투스 통신으로 스마트폰과 아두이노가 글자를 주고 받는 방법을 설명해드리겠습니다. 블루투스? 먼저 블루투스(Bluetooth)가 무엇인지 간략하게 설명해드리자면 블루투스는 1994년에 에릭슨이 최초로 개발한 디지털 통신 기기를 위한 개인 근거리 무선통신 산업 표준이다. 2.4~2.485GHz의 전파를 이용하여 전자 장비 간의 짧은 거리의 데이터 통신 방식을 규정한다. 출처: https://ko.wikipedia.org/wiki/블루투스 위와 같이 설명되어 있는데 사실 핵심은 블루투스 = 근거리 무선 통신 입니다. 블루투스를 사용하기 위해서는 '페어링(Pairing)' 단계를 거쳐야 하는데 블루투스 기기들은 대부분 마스터(Master)와 슬레이브(Slave)의 관계를 맺기 때문입니다. 블루투스는 기본적으.. 더보기