43
Arduino Programming Minsub Lee Computer Communications Lab. Dept. Information and Communications Engineering Hankuk University of Foreign Studies September 4, 2014

Arduino Programming

Embed Size (px)

DESCRIPTION

Arduino Programming. September 4, 2014. Minsub Lee Computer Communications Lab. Dept. Information and Communications Engineering Hankuk University of Foreign Studies. Contents. Introduction Arduino 소개 실습 재료 Arduino 개발환경 Arduino & Processing Language. 아두이노 인벤터킷. 실습 재료. 아두이노 인벤터킷. - PowerPoint PPT Presentation

Citation preview

Page 1: Arduino Programming

Arduino Programming

Minsub Lee

Computer Communications Lab.

Dept. Information and Communications Engineering

Hankuk University of Foreign Studies

September 4, 2014

Page 2: Arduino Programming

• Introduction– Arduino 소개– 실습 재료

• Arduino 개발환경

• Arduino & Processing Language

Contents

Page 3: Arduino Programming

실습 재료 아두이노 인벤터킷

Page 4: Arduino Programming

아두이노 인벤터킷

Page 5: Arduino Programming

아두이노 인벤터킷

Page 6: Arduino Programming

• 아두이노 ( Arduino ) – Arduino 는 이탈리어이고 영어로는 Best Friend– 아두이노는 오픈소스를 기반으로한 마이크로 컴퓨터– AVR 계열의 칩셋을 사용 (atmege328)– USB 로 간단히 컴파일하고 업로드 할 수있다 .– 멀티 플랫폼 지원 ( Windows, Mac, Linux 지원 )– Processing 이라는 언어사용 ( Java, C 언어와 유사 )– 프로그래밍 코드를 Sketch 라고 한다

Arduino

Arduino UNO board

Page 7: Arduino Programming

Arduino

Arduino board Arduino IDE Open Source

Page 8: Arduino Programming

Arduino UNO R2 board• Arduino is a small computer!

Small computer with microcon-troller(ATmega328 microcontroller )

Page 9: Arduino Programming

9

• ATmega328 microcontroller • Input voltage: 7-12V• 14 Digital I/O Pins (6 PWM outputs) • 6 Analog Inputs • 32k Flash Memory • 16Mhz Clock Speed

Features

Page 10: Arduino Programming

10

Arduino UNO R3

Page 11: Arduino Programming

• 아두이노 UNO 보드 의 고성능 버전– ATMega328 을 ATMega2560 으로 변경– 메모리 용량 8 배 증가– 디지털 입출력 핀 54 개로 증가– 아날로그입력 16 개로 증가

Arduino Mega 2560

기본사양 : 54 Digital I/O Pins (14 PWM outputs) 16 Analog Inputs 4 UARTs( 하드웨어 시리얼 포트 ) 256KB Flash MemorySRAM 8KB EEPROM 4KB 16Mhz Clock Speed

Page 12: Arduino Programming

• 아두이노 UNO 에 기본 장착된 USB 변환기 등을 제거하여 경제적으로 사용할 수 있는 버전 ( 전문가용 )– 프로그래밍을 위해 USB to Serial 변환기가 필요

Arduino Pro 328

기본사양 : 14 Digital I/O Pins (6 PWM out-puts) 6 Analog Inputs 32k Flash Memory 16Mhz Clock Speed

Page 13: Arduino Programming

• 아두이노 프로에서 크기를 축소한 보드– 의 크기

Arduino Pro Mini 328

기본사양 : 14 Digital I/O Pins (6 PWM out-puts) 6 Analog Inputs 32k Flash Memory 16Mhz Clock Speed

Page 14: Arduino Programming

• 원형모양의 보드로 전도성 실을 이용하여 바느질을 하여 회로를 구성– 예술작품 및 미적 완성도를 위한 디자이너를 위한 보드

LilyPad Arduino 328

기본사양 :14 Digital I/O Pins (6 PWM out-puts) 6 Analog Inputs 32KB Flash Memory8Mhz Clock Speed

Page 15: Arduino Programming

ARDUINO 개발환경

개발환경 구축 및 IDE 사용법드라이버 설치

Page 16: Arduino Programming

IDE

Processing 언어에 기반을 둔 프로그래밍 언어

sketch

Page 17: Arduino Programming

Arduino development environment

http://www.arduino.cc/

Page 18: Arduino Programming

Arduino development environment

Page 19: Arduino Programming

Arduino development environment

Page 20: Arduino Programming

Arduino IDE

Upload (to Arduino Board)

Verify (Com-pile) Serial moni-

tor

Page 21: Arduino Programming

• Verify / Compile– 작성한 프로그램 코드가 제대로 되었는지 확인해주고 , 이상이 없으면

컴파일이라는 과정을 통해 기계가 이해할 수 있는 언어로 바꿔준다 .

• Upload– Verify 로 오류도 없고 , 기계가 이해할 수 있는 언어로 바뀐 코드를 아두이노

보드로 보내주는 기능이다 .

• New– 새로운 스케치 작업을 할 때 사용한다 .

• Open– 기존에 작성된 스케치를 열 때 사용한다 .

• Save– 지금 작성하고 있는 스케치 즉 프로그램 코드를 저장한다 .

• Serial Monitor– 시리얼로 보내고 받는 값을 확인할 때 사용한다 .

Arduino IDE

Page 22: Arduino Programming

Arduino development envionment

USB A type

USB B type

USB2.0 A-B Ca-ble

Page 23: Arduino Programming

Arduino development envionment

USB A type

USB B type

Page 24: Arduino Programming

Arduino development envionment

Page 25: Arduino Programming

Arduino development environment

Page 26: Arduino Programming

ARDUINO & PROCESSING LANGUAGE

Page 27: Arduino Programming

• Processing 은 오픈 소스 프로젝트로 MIT 미디어 연구소에서 시작 되었다 . (by Casey Reas, 벤자민 프라이 )

• Processing is an open source programming lan-guage and environment for people who want to create images, animations, and interactions.– http://www.processing.org/

– http://wearechopchop.com/%E2%80%9Cunnamed-soundsculpture%E2%80%9D/

– http://max-planck-research-networks.net/

Processing

Page 28: Arduino Programming

Arduinohttp://www.arduino.cc/

Page 29: Arduino Programming

Wiringhttp://wiring.org.co/

Page 30: Arduino Programming

void setup() {// Do initialization : Executed only

once}

void loop() {// Loop : Continuously executed

}

Arduino Basic Structure

Page 31: Arduino Programming

Example - Blink Sketchvoid setup() {

// initialize the digital pin as an output.// Pin 13 has an LED connected on most Arduino boards:pinMode(13, OUTPUT);

}

void loop() {digitalWrite(13, HIGH); // set the LED ondelay(1000); // wait for a seconddigitalWrite(13, LOW); // set the LED offdelay(1000); // wait for a second

}

Page 32: Arduino Programming

• Structure– setup()– loop()

• Functions– pinMode (pin, mode) – 사용 할 디지털 pin 번호 , 사용 모드– digitalWrite (pin, value) – pin 번호에 value 값 출력– delay(ms) – millisecond 사용 ex) delay(1000) 1sec delay

• Variables– HIGH, LOW, INPUT, OUTPUT

Reference

Page 33: Arduino Programming

33

Example - Blink

1. Click Verify(compile) and check error

2. Check if Arduino is connected

3. Click UploadWhile uploading code to Arduino, you will see fast blinking lights on TX and RX LEDs

4. Code will start running soon

Page 34: Arduino Programming

Example - Blink

Page 35: Arduino Programming

개인과제

Page 36: Arduino Programming

How about two LEDs?

Page 37: Arduino Programming

APPENDIX. 드라이버 설치

Page 38: Arduino Programming

1. 윈도우 시작 > 제어판 > 장치관리자2. 장치리스트에서 Arduino UNO 장치 선택 후 우 클릭3. 드라이버 업데이트 선택

Driver install

Page 39: Arduino Programming

Driver install

Page 40: Arduino Programming

Driver install

Page 41: Arduino Programming

Driver install

Page 42: Arduino Programming

Driver install

Page 43: Arduino Programming

Driver install