PowerPoint 프레젠테이션

Similar documents
PowerPoint 프레젠테이션

차시 AS_02 대상 교육주제아두이노 LED 및버튼제어프로젝트교육시간 120 분 1. 아두이노를이용하여 LED 를제어할수있다. 교육목표 2. 아두이노를이용하여삼색 LED 를제어할수있다. 3. 아두이노에서버튼입력을수행하여프로그램에연동할수있다. 장비류는미리배분하고, 재료는

Microsoft PowerPoint - es-arduino-lecture-03

< 제누이노스타트키트 > 사용설명서 목차 1. Arduino IDE 설치하기 2. Genuino 연결및 Arduino IDE 셋팅하기 3. 센서설명및연결도, 예제소스 1

슬라이드 1

시프트 레지스터 Shift Resistor 자, 이제 LED MATRIX 8x8 Board를 마이크로컨트롤러에 연결된 3개의 선으 로 제어해 보자. 이는 마이크로컨트롤러의 포트를 확장함과 동시에 프로그램 으로 제어를 더 쉽게 한다는 장점이 있다. 물론 포트를 절약하게

실험 5

Microsoft PowerPoint - chap06-2pointer.ppt

1

<4D F736F F F696E74202D203131C1D6C2F7202D E6FB8A620C0CCBFEBC7D120C4B3B8AFC5CD204C43442C C1A6BEEEC7CFB1E2205

SBR-100S User Manual

슬라이드 1

BY-FDP-4-70.hwp

슬라이드 1

PowerPoint 프레젠테이션

Microsoft PowerPoint - ch07 - 포인터 pm0415

<4D F736F F F696E74202D E6F312D BCB3C4A12C20C4DAB5F920B1E2C3CA2C20BDC3B8AEBEF3C5EBBDC5>

지도상 유의점 m 학생들이 어려워하는 낱말이 있으므로 자세히 설명해주도록 한다. m 버튼을 무리하게 조작하면 고장이 날 위험이 있으므로 수업 시작 부분에서 주의를 준다. m 활동지를 보고 어려워하는 학생에게는 영상자료를 접속하도록 안내한다. 평가 평가 유형 자기 평가

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20325FBEC6B5CEC0CCB3EB20B1E2C3CABDC3C7E82E BC8A3C8AF20B8F0B5E55D>

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

PowerPoint 프레젠테이션

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

1. SeeEyes HD-SDI 전송장치 개요 개요 HD-SDI 전송 솔루션 신기술 적용을 통한 고성능 / 경제적 CCTV 시스템 구축 Power over Coax 기능을 포함한 HD-SDI 전송 솔루션 저렴한 동축케이블을 이용하여 HD-SDI 신호를 원거리 전송 (H

H3250_Wi-Fi_E.book

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

IoT FND8 7-SEGMENT api

Microsoft Word doc

슬라이드 제목 없음

PowerPoint 프레젠테이션

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

PowerPoint Presentation

슬라이드 1

목차 1부. 보드 운영체제와 MCU 보드의 포트 2부. 전압과 전류 그리고 모터 드라이버 3부. 초음파 센서 4부. BOS Script 프로그래밍 5부. W2R -1 소개

실험 5

Raspberry Pi 입출력디바이스 II 1 제 05 강 입출력디바이스 II 터치스위치자석스위치움직임감지센서부저모듈 LED Array RGB LED 릴레이모듈초음파센서 ( 거리측정 ) 적외선센서및리모콘 ( 미작성 )

슬라이드 1

Example: LED flashlight

슬라이드 1

ez-md+_manual01


<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

PowerPoint 프레젠테이션

슬라이드 1


API 매뉴얼

OCW_C언어 기초

½½¶óÀ̵å Á¦¸ñ ¾øÀ½

UART Controller 구현

2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

실험. Multimeter 의사용법및기초회로이론 Multimeter 의사용법 멀티미터 (Multimeter) 는저항, 전압, 전류등을측정할수있는계측기로서전면은다음그림과같다. 멀티미터를이용해서저항, 전압, 전류등을측정하기위해서는다음그림과같은프로브 (probe) 를멀티미터

PowerPoint 프레젠테이션

실험 5

윈도우즈프로그래밍(1)

Section 03 트랜지스터를이용한스위칭동작 16/45 트랜지스터의직류특성 활성 직류상황에서전류 I C 는전류 I B 보다 h FE 배만큼더많은전류가흐름» 베이스와이미터가순방향으로바이어스» 컬렉터와베이스가역방향으로바이어스 차단 만일 I B 가 0[A] 이면컬렉터전류

Microsoft Word - src.doc

디지털TV솔루션 브로셔

Microsoft PowerPoint - additional01.ppt [호환 모드]

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

<4D F736F F F696E74202D20C1A63036C0E520BCB1C5C3B0FA20B9DDBAB928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Cortex-M 아두이노 프로그래밍 Cortex-M 아두이노 프로그래밍 4/2/2016 Written by Steve AHN 1/23

PowerPoint 프레젠테이션

고객 카드

(Microsoft PowerPoint - \301\24608\260\255 - \261\244\277\370\260\372 \300\347\301\372)

딥러닝 첫걸음

Chapter. 14 DAC 를이용한 LED 밝기제어 HBE-MCU-Multi AVR Jaeheung, Lee

WS12. Security

Microsoft PowerPoint - e pptx

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

RS- 232, RS485 FND Display Module NET-SFND-4-23A RS-232, RS485 FND Display Module NET-SFND-4-23A MANUAL (Rev 1.0) Net-Control http

PowerPoint 프레젠테이션

그룹웨어와 XXXXX 제목 예제

Microsoft PowerPoint - C프로그래밍-chap03.ppt [호환 모드]

2009년2학기 임베디드시스템 응용

Microsoft Word - PEB08_USER_GUIDE.doc

슬라이드 1

Arduino 와함께하는 40 가지센서 목차 Chapter 1. Arduino Arduino에대해서 Arduino 핀종류... 6 Chapter 2. 아두이노를다루기위한기본지식 프로그래밍 전기전자기

Studuino소프트웨어 설치

SMT Kor.indd

C 프로그래밊 개요

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

1. 아두이노 (Arduino) 개요및개발환경구축 아두이노프로젝트는예술가, 디자이너또는학생들이저렴한마이크로컨트롤러를이용해제어장치를쉽게만들수있도록돕기위해마시모밴지 (Massimo Banzi) 와데이비드쿠아르티에예스 (David Cuartielles) 에의해 2005년이탈

C프로-3장c03逞풚

가. 도트매트릭스제어하기 단일 LED와는다르게도트매트릭스를구동시는구동전류가프로세서에서출력되는전류보다사용량을더많이필요하기때문에 TTL 계열의 IC로구동시키기에는무리가따른다. 이러한문제를해결하기위해서사용전압, 전류정격이높은달링턴트랜지스터가어레이형태로들어있는 ULN2803을

Microsoft PowerPoint - chap04-연산자.pptx

Microsoft PowerPoint - es-arduino-lecture-08

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

UI TASK & KEY EVENT

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A636C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

C 언어 프로그래밊 과제 풀이

Microsoft PowerPoint - 부호기와 복호기.PPT

금오공대 컴퓨터공학전공 강의자료

슬라이드 1

Microsoft PowerPoint Predicates and Quantifiers.ppt

The Pocket Guide to TCP/IP Sockets: C Version

Transcription:

아두이노를활용하여작품만들기 이시영

Ⅰ. 아두이노들어가기

스마트경인교육대학교러닝코딩과학영재광명교육지원청교육원

명사로서로봇 (robot) 은다음의의미를지닌다. 기계 인간과비슷한형태를가지고걷기도하고말도하는기계장치. 인조인간. 기계 어떤작업이나조작을자동적으로하는기계장치. 남의지시대로움직이는사람을비유적으로이르는말. 하드웨어와소프트웨어를설계하여설계자가생각하는동적을체계적으로수행하는기계

Led 예술작품만들기 바나나피아노 메이키메이키 탱크만들기

스마트경인교육대학교러닝코딩과학영재광명교육지원청교육원 아두이노란? 1. 마이크로컨트롤러보드 =? 소형컴퓨터 2. 아두이노 - 아두이노보드 & 통합개발환경 3. 오픈소스 - 아두이노보드하드웨어공개하드웨어를다양한형태로자유롭게변형가능클론보드 ( 복제보드 ) 도무방 - 통합개발환경코드공개 4. 다양한성능의아두이노보드우노, 메가, 듀에, 아두이노이더넷, 등 5. 개발 ( 사용 ) 이편리, 6. 저렴한가격 7. 다양한 OS 지원 Windows, Mac OS, Linux

스마트경인교육대학교러닝코딩과학영재광명교육지원청교육원 아두이노 ( 보드 ) 개발목적컴퓨터와인간의상호작용의폭을넓히기위해쉬운개발환경을제공하여전문교육을받지않은일반인도쉽게프로그래밍가능일반인? 어린이 ( 초등학생 )? 아두이노보드프로그래밍언어아두이노보드를개발한목적에부합한쉬운개발환경제공텍스트기반프로그래밍언어텍스트코딩, ( 예를들어 C 언어 ) 그래픽기반프로그래밍언어 ( 예, LabView, Scratch for Arduino 등 ) int led = 13; void setup() { pinmode(led, UTPUT); void loop() { digitalwrite(led, HIGH); // turn the LED on delay(1000); // wait for a second digitalwrite(led, LOW); // turn the LED off delay(1000); // wait for a second

아두이노보드 아두이노우노 아두이노네오나르도 아두이노마이크로 아두이노이더넷 아두이노메가 아두이노듀에 아두이노윤 아두이노릴리패드 아두이노확장쉴드 이더넷쉴드와이파이쉴드모터쉴드무선쉴드 스마트경인교육대학교러닝코딩과학영재광명교육지원청교육원

스마트경인교육대학교러닝코딩과학영재광명교육지원청교육원 개발환경설치 아두이노홈페이지접속 Download 선택, arduino.cc 사용하는컴퓨터의 OS 에맞는개발환경프로그램선택

Windows Installer 를선택 아두이노통합개발환경설치

아두이노보드를컴퓨터에연결 장치관리자에서아두이노보드확인자동인식되지않은경우수동으로드라이브설치아두이노통합개발환경실행파일이있는폴더아래에 drivers 라는폴더에서. 아두이노통합개발환경 (IDE) 실행보드설정 - 아두이노보드선택포트설정 - 보드가연결된포트선택 ( 장치관리자참고 )

통합개발환경사용법 - 컴파일 - 업로드작성된코드에대한에러검사에러없을경우보드로업로드 - 저장 - 열기 - 새파일 - 시리얼모니터실행직렬포트로데이터송수신하는프로그램실행

파일 예제 Basic- Blink 컴파일 - 업로드 Gnd 와 13 번사이에불이깜박이면이상없음

Ⅱ. 디지털기초이해

아날로그신호 연속해서변화하는 양 ( 量 ) 의개념을가리킨다. 예를들면온도나습도, 전압, 음의크기, 이들모두아날로그양이다. 보통이것을 숫자 로표시한다. 그러나숫자는이론적으로불연속 ( 디지털 ) 이고, 양 을정확하게표현할수없다. 숫자 를사용하는것은어디까지나편의에따라사용하는것이다. 전기회로는 아날로그회로 와 디지털회로 로구분된다. 아날로그회로에서는연속되는아날로그신호파형을그대로취급하며, 확대 ( 증폭 ) 하거나축소 ( 감쇠 ), 또는변형 ( 특성변화, 꼬임 ) 시키기도한다. 즉, 신호를본래아날로그양그대로취급하는것이아날로그회로이다. 이와는달리디지털회로에서는연속된 양 은다루지않고, 주로전압이 있다 혹은 없다 라는불연속적인동작만일어난다. 따라서디지털회로에서소리와같은아날로그양을다룰때는반드시사전에디지털변환 ( 코드화 ) 하여 숫자 와같은불연속적인기호로전환해야한다.

디지털신호 정보를표현하는방법에있어서아날로그가모양으로표시된다면디지털은정확하게 '0 과 1' 이라는수치로표시되는것을말한다. 아날로그의경우자연상태의정보를전달하기때문에먼거리로전송할경우변형되기쉽지만디지털은 0 과 1 이라는숫자로변형시켜전달하기때문에훨씬먼거리까지정확하게전송할수있다. 디지털방식은주로컴퓨터에서사용되고있으며, 최근에는방송분야에도입되어선명한영상과함께쌍방향멀티미디어형태의다양한기술들을가능하게해주고있다. 0 과 1 을사용한 2 진부호로나타낸불연속적인정보이다. 레이저의꺼지고켜짐이디지털신호의 0 과 1 에대응된다. 데이터전송과통신에서는양질의전송을위하여디지털방식을이용하고있다. 디지털시스템은설계하기가쉬우며, 정보저장이쉽고, 정밀성과정확성이더큰것은물론프로그래밍할수있으며, 더많은디지털회로가 IC 칩으로집적될수있다는장점이있다.

브레드보드사용법 그림기준세로방향구멍 5 개연결 가로방향각각분리

브레드보드사용법 붉은색선을따라세로방향연결파란색선을따라세로방향연결

회로구성하기주어진회로를브레드보드에구성하시오. 저항은 + 단자와 단자를구분하지않음.

브레드보드사용법 아래회로구현예

아래회로구현예

회로구성하기주어진회로를브레드보드에구성하시오 LED 는 + 단자와 단자구분

십의자리일의자리를읽고여기에다가승수를곱하면됨 V = I R 즉전압이 5 = 0. 5m 10k 옴

실습규칙 1 아두이노보드의 5v 핀과 GND 핀을바로연결하지않습니다. 합선, 쇼트 ^^ 실습규칙 2 아두이노보드의 5v 핀과 GND 핀을바로연결하지않습니다. 합선, 쇼트 ^^ 실습규칙 3 아두이노보드의 5v 핀과 GND 핀을바로연결하지않습니다. 합선, 쇼트 ^^

다음과같이회로를구성전류는 5V (+) 핀에서흘러나와서 LED 의긴핀 (+) 으로들어가서짧은핀 (-) 로나온다. 전류는저항을거져 GND(-) 로들어간다. LED 에전류가흐르기때문에 LED 가켜진다. 저항 : 330[Ω]

실습 Turn on LED LED 는극성에주의 LED 의긴핀 : + LED 의짧은핀 : - [ 단계 1] LED 의두핀중에서길이가긴핀을아두이노보드의 5V 핀에연결. [ 단계 2] LED 의두핀중짧은핀을 330[Ω] 저항의한쪽핀에연결.

실습 Turn on LED [ 단계 3] 아무것도연결되지않은저항의한쪽핀을아두이노보드의 GND 핀과연결. [ 고찰 ] 전류는 5V (+) 핀에서흘러나온다. 전류는 LED 의긴핀 (+) 으로들어가서짧은핀 (-) 로나온다. 전류는저항을거져 GND(-) 로들어간다. LED 에전류가흐르기때문에 LED 가켜진다.

두개의 LED 점등 저항 : 330[Ω]

실험 1 준비물 : 전원공급장치, 브래드보드, 7408IC, 4.7K 저항, 330 저항, 적색 LED, 녹색 LED, DIP 스위치 입력 출력 A B Z 0 0 0 1 1 0 1 1

실험 1 준비물 : 전원공급장치, 브래드보드, 7432IC, 4.7K 저항, 330 저항, 적색 LED, 녹색 LED, DIP 스위치 입력 출력 A B Z 0 0 0 1 1 0 1 1

실험 1 준비물 : 전원공급장치, 브래드보드, 7400IC, 4.7K 저항, 330 저항, 적색 LED, 녹색 LED, DIP 스위치 입력 출력 A B Z 0 0 0 1 1 0 1 1

Ⅲ. 아두이노실습

실험 1 아두이노스케치의기본구조 - 기본구조 setup() 제일먼저실행되는함수. setup() 함수종료후 loop() 함수실행 loop() loop() 함수내의코드는무한반복됨. 디지털신호출력 - Blink 예제 PinMode() 핀의입출력결정첫번째인자핀번호두번째인자입출력결정 digitalwrite() 디지털값출력첫번째인자핀번호 두번째인자핀상태 delay() 괄호안의시간만큼지연 단위는 ms void setup() { pinmode(13, OUTPUT); void loop() { digitalwrite(13, HIGH); delay(1000); digitalwrite(13, LOW); delay(1000);

실험 1

실험 2

#define DELAY_TIME 100 void setup(){ pinmode(2. OUTPUT); pinmode(3. OUTPUT); pinmode(4. OUTPUT); pinmode(5. OUTPUT); pinmode(6. OUTPUT); void loop(){ digitalwrite(2.high); delay(delay_time); digitalwrite(2.low); digitalwrite(3.high); delay(delay_time); digitalwrite(3.low); digitalwrite(4.high); delay(delay_time); digitalwrite(4.low); digitalwrite(5.high); delay(delay_time); digitalwrite(5.low); digitalwrite(6.high); delay(delay_time); digitalwrite(6.low); digitalwrite(5.high); delay(delay_time); digitalwrite(5.low); digitalwrite(4.high); delay(delay_time); digitalwrite(4.low); digitalwrite(3.high); delay(delay_time); digitalwrite(3.low); 실험 2

실험 2 #define DELAY_TIME 100 #define 매크로상수로선언하는명령어상수란처음한번값을할당하고사용하는것을말한다. 여기서 100 의값을갖는 DELAY_TIME 이라는매크로상수를선언한것이다.

실험 3

버튼을사용하여불을깜박이는프로그램 실험 3 #define LED 12 #define BUTTON 7 void setup() { pinmode(led, OUTPUT); pinmode(button, INPUT); void loop() { if (digitalread(button)==hi GH){ digital Write(LED, HIGH); delay(500); digital Write(LED, LOW);

버튼을사용하여불을깜박이는프로그램 실험 3

버튼을사용하여불을깜박이는프로그램 실험 3 풀업 입력핀과전원사이를저항을두고연결한다. 스위치가연결되지않으면입력핀은 5V 가된다.

버튼을사용하여불을깜박이는프로그램 실험 3 풀다운 입력핀과 GND 사이를저항을두고연결한다. 스위치가연결되지않으면입력핀의전압은 0V 가된다.

실험 3 If( 조건 ){ ----------- If 문 If 문은조건이참이면괄호안의코드를실행시킨다. (digitalread(button)==high){ == 기호는좌우가같은지비교하는것이다. 만약동일하면참이고다르면거짓이다. 프로그래밍에서는참을 true, 거짓을 false 라고한다.

실험 3 If( 조건 ){ else{ ----------- ----------- If 문에는 else 가붙는경우도있다. 조건이동일하지않으면 else 쪽괄호코드가실행된다.

실험 3 #define LED 12 #define BUTTON 7 void setup() { pinmode(led, OUTPUT); pinmode(button, INPUT); void loop() { if (digitalread(button)==high){ digital Write(LED, HIGH); delay(500); digital Write(LED, LOW);

실험 3 과제 Led 순차적으로켜지는회로를배웠습니다. 버튼을누르면거꾸로가는회로를만들어보세요

실험 4-1 삼색 LED 삼색 LED 는빛의삼원색을제어하여원하는색을나타내는 LED 다.

실험 4-1

실험 4-1 #define RED 11 #define GREEN 10 #define BLUE 9 void setup() { randomseed(analogread(0)); void loop() { analogwrite(red, random(255)); analogwrite(green, random(255)); analogwrite(blue, random(255)); delay(1000); randomseed(analogread(0)); 키값을이용하여난수생성기를초기화하는명령어 random(255); 0 이상 255 미만의랜덤한수를발생함

실험 4-2

#define RED 11 #define GREEN 10 #define BLUE 9 #define RED_BUTTON 4 #define GREEN_BUTTON 3 #define BLUE_BUTTON 2 int r=0, g=0, b=0 void setup() { pinmode(red_button, INPUT); pinmode(green_button, INPUT); pinmode(blue_button, INPUT); void loop() { if(digitalread(red_button) == HIGH){ ++r; if(r>255){ r=0; 실험 4-2 if(digitalread(green_button) == HIGH){ ++r; if(r>255){ r=0; if(digitalread(blue_button) == HIGH){ ++r; if(r>255){ r=0; analogwrite(red. r); analogwrite(green. g); analogwrite(blue. b); delay(10);

실험 4-2 ++a; ++ 기호는해당변수에 1 을더한다는뜻이다. --a; -- 기호는해당변수에 1 을뺀다는뜻이다.

실험 4-2 과제 - 색을감소시켜서변화시키는삼색 LED 프로그램을만들어보세요 - 신호등을만들어보세요

실험 5-1

실험 5-1

실험 5-1

실험 5-1

#include "pitches.h" int melody[] = { NOTE_G4, NOTE_G4, NOTE_A5, NOTE_A5, NOTE_G4, NOTE_G4, NOTE_E4, NOTE_G4, NOTE_G4, NOTE_E4, NOTE_E4, NOTE_D4, 0, NOTE_G4, NOTE_G4, NOTE_A5, NOTE_A5, NOTE_G4, NOTE_G4, NOTE_E4, NOTE_G4, NOTE_E4, NOTE_D4, NOTE_E4, NOTE_C4, 0; int notedurations[] = { 1,1,1,1, 1,1,2, 1,1,1,1, 3,1, 1,1,1,1, 1,1,2, 1,1,1,1, 3,1; 실험 5-1

실험 5-1 void setup() { for (int thisnote = 0; thisnote<26; thisnote++){ int noteduration = 250 * notedurations[thisnote]; tone(8, melody[thisnote],noteduration); int pausebetweennotes = noteduration * 1.30; delay(pausebetweennotes); notone(8); void loop(){

실험 5-1

실험 5-1

실험 5-1

실험 5-2

#define NOTE_C4 262 #define NOTE_D4 294 #define NOTE_E4 330 실험 5-2 int pins[] = {2, 3, 4; int notes[] = {NOTE_E4, NOTE_D4, NOTE_C4; void setup() { for(int i = 0; i<3; i++){ pinmode(pins[i], INPUT); void loop() { for(int i = 0; i <3; i++){ if(digitalread(pins[i]) == HIGH){ tone(8, notes[i], 20);

실험 5-2 과제 : 피아노건반의수를늘려서음악을재생해봅시다. 삼색 Led 활용하여피아노건반을만들어봅시다.

실험 6-1 빛의밝기가밝아지면저항이줄어든다.

실험 6-1

실험 6-1

실험 6-1 void setup() { void loop() { analogwrite(9,map(analogread(a0),0,1023,0,255)); 기준값 기준값이속한범위의최소값 기준값이속한범위의최소값 변환하고자하는범위의최소값 변환하고자하는범위의최소값 Map : 특정범위에속하는값을다른범위의값으로변환해주는명령어

실험 6-2

실험 6-2

실험 6-2 void setup() { void loop() { tone(8,map(analogread(a0),0,1023,31,4978),20); delay(500); 피에죠스피커가낼수있는음의범위

실험 6-2 빛이밝을수록 LED 밝아지도록수정해보세요. 빛의밝기에따라피에죠스피커의재생시간도다르게만들어보세요

실험 7-1 초음파쎈서에서 Trig 부분이초음파가발사된다 초음파가돌아오는시간을거리로계산한다.

실험 7-1

실험 7-1 #define TRIG 2 #define ECHO 3 #define RED 11 #define GREEN 10 #define BLUE 9 void setup() { pinmode(trig, OUTPUT); pinmode(echo, INPUT); void loop() { digitalwrite(trig,low); delaymicroseconds(2); digitalwrite(trig,high); delaymicroseconds(10); digitalwrite(trig,low); long distance = pulsein(echo,high)/58.2; analogwrite(red,0); analogwrite(green,0); analogwrite(blue,0); if(distance<10){ analogwrite(red,255); else if (distance<20){ analogwrite(green,255); else if (distance<30){ analogwrite(blue,255); delay(100);

실험 7-1 long distance = pulsein(echo,high)/58.2; 확인하고자하는핀번호 목표의상태값 초음파의거리를 cm 로환산

실험 7-2

실험 7-2 #define TRIG 2 #define ECHO 3 void setup() { pinmode(trig, OUTPUT); pinmode(echo, INPUT); void loop() { digitalwrite(trig,low); delaymicroseconds(2); digitalwrite(trig,high); delaymicroseconds(10); digitalwrite(trig,low); tone(8,1000,20); delay(100); tone(8,1000,20); delay(distance); long distance = pulsein(echo,high)/58.2;

실험 7-2 거리에따라삼색 LED 가다양한색으로빛나게한다. 거리에따른음의주기가아니라음의높이를바꾸게한다.

실험 8

실험 8 아노드방식 보통사용하는방식으로 vcc 에전원을연결한다. A~G, DP 핀에전원을 0 으로설정하면 LED 가켜지고 5V 설정하면꺼진다.

실험 8-1

byte digits[10][7]= { {0,0,0,0,0,0,1,//0 {1,0,0,1,1,1,1,//1 {0,0,1,0,0,1,0,//2 {0,0,0,0,1,1,0,//3 {1,0,0,1,1,0,0,//4 {0,1,0,0,1,0,0,//5 {0,1,0,0,0,0,0,//6 {0,0,0,1,1,1,1,//7 {0,0,0,0,0,0,0,//8 {0,0,0,1,1,0,0,//9 ; void setup(){ for(int i=2;i<10;i++){ pinmode(i, OUTPUT); digitalwrite(9,high); void loop(){ for(int i=0;i<10;i++){ delay(1000); displaydigit(i); 실험 8-1 void displaydigit(int num){ int pin = 2; for(int i=0;i<7;i++){ digitalwrite(pin+i,digits[num][i]); 숫자를표시하는함수 DP LED 를끈다.

실험 8-1

실험 8-2

#define PLUS 11 #define MINUS 12 int digit = 0; byte digits[10][7]= { {0,0,0,0,0,0,1,//0 {1,0,0,1,1,1,1,//1 {0,0,1,0,0,1,0,//2 {0,0,0,0,1,1,0,//3 {1,0,0,1,1,0,0,//4 {0,1,0,0,1,0,0,//5 {0,1,0,0,0,0,0,//6 {0,0,0,1,1,1,1,//7 {0,0,0,0,0,0,0,//8 {0,0,0,1,1,0,0,//9 ; void setup(){ pinmode(plus, INPUT); pinmode(minus, INPUT); for(int i=2;i<10;i++){ pinmode(i, OUTPUT); digitalwrite(9,high); void loop(){ if(digitalread(plus) == HIGH){ ++digit; if(digit>9){ digit=0; if(digitalread(minus)==high){ --digit; if(digit<0){ digit=9; 실험 8-2 displaydigit(digit); delay(100); void displaydigit(int num){ int pin = 2; for(int i=0;i<7;i++){ digitalwrite(pin+i,digits [num][i]);

실험 8-2 7 세그먼트 2 개를연결해본다. 숫자가아닌알파벳을연결해본다.