산구루|국토종주 자전거길 가이드
  • 홈
  • 종주 공통
    • 자전거길 종주 인증에 대하여
    • 국토종주 거리 계산기
    • 자전거길 종주 데이터
    • 인사 말씀
    • 처음 오신 분
    • 블로그 이용법
    • 닫기
  • 국토종주
    • 한강 구간
      • 아라
      • 한강(서울)
      • 남한강
    • 새재
    • 낙동강 구간
      • 낙동강 중류
      • 낙동강 하류
    • 닫기
  • 4대강종주
    • 한강종주
      • 한강(서울)
      • 남한강종주
    • 낙동강종주
      • 낙동강 상류(안동)
      • 낙동강 중류
      • 낙동강 하류
    • 금강종주
    • 영산강종주
    • 닫기
  • 나머지 종주
    • 동해안종주
    • 제주환상종주
    • 섬진강종주
    • 북한강종주
    • 오천종주
    • 닫기
  • 지리산
    • 지리산둘레길3(인월-금계)
    • 지리산둘레길11(하동호-삼화실)
    • 닫기
  • 로그인
  • 내정보
    • 등록(블로그 가입)
    • 프로필 보기/수정
    • 비밀번호 찾기
    • 닫기
  • 검색
    • 닫기

[아두이노001] 아두이노란 무엇인가?

2017년 12월 4일 | {산구루}작성 | 2 Comments |

이글은 2017.12.07에 있었던 오프라인 강의 노트입니다.

아두이노는 사물인터넷에서 주요한 생태계를 이루고 있다.그 소프트웨어나 하드웨어는 오픈되어 있어서,주변에는 다양한 부속품이 개발되어 있고 이를 기반으로 수많은 사람들이 창의적인 작품을 만들고 있다.

아두이노의 유래 아두이노의 유래
  • 2005년 이탈리아의 IDII라는 예술대학에서 탄생
  • 전자 비전공자인 학생들이 예술적 아이디어를 작은 프로세서를 이용해 빠르게 작품으로 만들수 있게 함
  • 오픈 소스
  • 오픈 하드웨어

아두이노가 성공한 이유?

▲모두 닫기  |  {끝:아두이노의 유래}
주요 아두이노 주요 아두이노
  • Arduino UNO 가장 대중적인 모델
    다양한 쉴드를 적층할수 있다.
  • Arduino NANO UNO와 기본 기능은 같다(오히려 핀은 2개 많다).
    만능기판에 바로 꽂아서 사용하 수 있다.
  • Arduino Pro Mini NANO와 기능은 같다.
    PC와 USB연결을 위한 부속품(FTDI)이 필요하다.
    전럭 소모가 상대적으로 적고 기판에 직접 올려서 작은 크기의 작품으로 만들기가 좋다.
  • Arduino LilyPad 웨어러블 작품을 만들 수 있다.
    전자실을 이용해서 옷에 붙일 수도 있다.
  • Arduino Mega 2560 메모리가 크고 핀의 수가 많다.
    3D 프린터나 로보트 등과 같은 비교적 복잡한 곳에 사용된다.
    핀의 배열이 UNO 등과 다르므로 사용에 주의가 필요하다.
모델SRAM
프로그램 수행
FLASH
프로그램 보관
디지털핀아나로그핀특징
UNO2KB32KB14개6개DC배럴 잭
프로그램 로드 모듈 포함
NANO2KB32KB14개8개프로그램 로드 모듈 포함
PRO MINI2KB32KB14개8개프로그램 로드 모듈 없음
MEGA25608K256K54개16개DC배럴 잭
프로그램 로드 모듈 포함
▲모두 닫기  |  {끝:주요 아두이노}
통합개발 환경 통합개발 환경

IDE : Integrated Development Environment
프로그램 코딩,디버그,컴파일,배포 등을 쉽게 할 수 있도록 한 프로그래밍 환경

Arduino의 경우 USB로 아두이노와 연결만 하면

  • 스케치 작성
  • 바이너리 생성
  • 보드에 바이너리 전송
  • 시리얼 모니터 연결
  • 보드에 전원 연결

등의 작업을 한꺼번에 할 수 있다.

아두이노 IDE 설치하기
  • Windows Installer>JUST DOWNLOAD
  • arduino-1.8.5-windows.exe 실행
▲모두 닫기  |  {끝:통합개발 환경}
아두이노 핀 아두이노 핀
  • 디지털핀
  • 아나로그핀
  • PWM(Pulse Width Modulation)
  • 시리얼핀(RX,TX)
  • I2C핀(Inter Integrated Circuit, 아이스퀘어씨)
아두이노핀 분류표 아두이노핀 분류표
아두이노 핀 분류
▲아두이노 핀 분류표
아두이노에 사용된 MCU핀맵 아두이노에 사용된 MCU핀맵
atmega328P-AU 핀맵
▲atmega328P-AU 핀맵
아두이노 나노 핀맵 아두이노 나노 핀맵
아두이노 나노 핀맵
▲아두이노 나노 핀맵
아두이노 부트로더 아두이노 부트로더
칩에 미리 설치 해둔 아두이노용 프로그램 조각인데,전용 프로그래머 없이 USB로만 스케치 바이너리 전송이 가능하게 한다.

부트로더가 하는 일:

  • USB가 연결되면 새로운 프로그램이 있는지 본다.
  • 새로운 프로그램이 있으면 플래쉬에 쓰고 새 프로그램을 수행
  • 새로운 프로그램이 없으면 옛 프로그램 수행
  • 512kb 플래쉬 차지
▲모두 닫기  |  {끝:아두이노 핀}
첫 스케치 첫 스케치

D4에 달려 있는 버튼을 누르면 D5핀에 5V 신호를 내보낸다.
5V 신호로 할 수 있는 일에 주목하자.

1
2
3
4
5
6
7
8
9
10
11
12
13
void setup() {
    // put your setup code here, to run once:
    pinMode(4,INPUT_PULLUP);
    pinMode(5,OUTPUT);
}
 
void loop() {
    // put your main code here, to run repeatedly:
    if (digitalRead(4) == LOW)
        digitalWrite(5,HIGH);
    else
        digitalWrite(5,LOW);
}

아두이노 핀 관련 함수

  • pinMode(핀번호,형식);
    INPUT
    digitalRead하면(스위치연결 HIGH, 스위치 해제 LOW)
    INPUT_PULLUP
    digitalRead하면(스위치연결 LOW, 스위치 해제 HIGH)
    OUTPUT
  • 값 = digitalRead(핀번호);
    LOW 또는 HIGH값을 돌려준다.
  • 값 = analogRead(핀번호);
    0~1023의 값을 돌려준다. 10BIT 해상도임
  • digitalWrite(핀번호,HIGH/LOW);
    HIGH: 5V 출력
    LOW:  0V 출력
  • analogWrite(핀번호,0~255);
    0    : 0% duty (0V 출력 효과)
    127: 50% duty (2.5 출력 효과)
    255: 100% duty (5V 출력 효과)
아두이노 언어 참조(한글) 아두이노 언어 참조(영어)

 

▲모두 닫기  |  {끝:첫 스케치}

관련

Filed Under: 사물인터넷, 아두이노, 아두이노강좌, 정보기술

댓글

  1. 세벌 님이 작성

    2017년 12월 9일 at 6:25 오전

    좋은 글 고맙습니다. 그런데… 옥의 티가…
    아두이노 핀 분류표에 오타? anlog Read 아니고 analog Read 겠죠?

    응답
    • 산구루 님이 작성

      2017년 12월 9일 at 10:29 오전

      감사합니다.
      오타 수정했습니다^^

      응답

댓글 남기기 응답 취소

Copyright © 2025 · Waytips Theme ·