아두이노 프로그래밍 2일차 – Part4 아날로그 키패드 활용하기 강사: 김영준 목원대학교 겸임교수

Slides:



Advertisements
Similar presentations
4차시: 3D프린터를 활용한 아두이노 응용작품 만들기
Advertisements

4D 장치 제작 체험으로 배우는 아두이노 및 SW프로그래밍 교육
한국기술교육대학교 아두이노 기반 펌웨어 개발 (기본과정) 5일차 강사: 김영준 목원대학교 겸임교수.
자바실험실 이동준 우리 곁으로 다가온 사물 컴퓨팅 자바실험실 이동준.
아두이노 센서의 연결 디지털 및 아날로그 센서값의 특징 디지털 센서 핀 구조 및 연결하기 아날로그 센서 핀 구조 및 연결하기
한국기술교육대학교 아두이노 기반 펌웨어 개발 (기본과정) 1일차 강사: 김영준 목원대학교 겸임교수.
컬러 LED바 이해하기 목차 재료준비 및 브레드 보드 배선 구성하기 컬러 LED바 이해 및 프로그램 실습 응용 작품 만들기.
아날로그 입력과 출력.
아두이노 기반 펌웨어 개발 FUTURE INNOVATOR 강사: 김 영 준 ㈜헬로앱스
블루투스로 모터 펌프 제어하기 앱인벤터와 스마트팜 키트를 활용한 ㈜헬로앱스
네트워크 스캔하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
아두이노 프로그래밍 4일차 – Part1 모바일 로봇 강사: 김영준 목원대학교 겸임교수.
LCD 명령어 이해하기 목차 재료준비 및 브레드 보드 배선 구성하기 LCD 명령어 이해 및 기본 실습 응용 작품 만들기.
AP 모드 활용하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
LCD를 활용한 탁상 시계 만들기 재료준비 및 브레드 보드 배선 구성하기 LCD를 활용한 탁상 시계 만들기 응용 작품 만들기
아두이노 프로그래밍 2일차 – Part4 아날로그 키패드 활용하기 강사: 김영준 목원대학교 겸임교수.
DK-128 ADC 실습 아이티즌 기술연구소
메시지 큐[5] – test1.c 메시지 제어: msgctl(2) #include <sys/msg.h>
2007 1학기 11 프로젝트 기초 실습.
아두이노 프로그래밍 2일차 – Part2 PSD 거리센서 강사: 김영준 목원대학교 겸임교수.
아두이노 프로그래밍 2일차 – Part2 PSD 거리센서 강사: 김영준 목원대학교 겸임교수
아두이노 프로그래밍 3일차 – Part1 컬러 LED바 활용하기 강사: 김영준 목원대학교 겸임교수
10장 컴퓨터 기반 데이터 획득 응용 프로그램 LabVIEW 사용법
13. 연산자 오버로딩.
10강. JSP 본격적으로 살펴보기-II 스크립트릿, 선언, 표현식 지시자 주석 Lecturer Kim Myoung-Ho
C 프로그래밍 C언어 (CSE2035) (Chap11. Derived types-enumerated, structure, and union) (1-1) Sungwook Kim Sogang University Seoul, Korea Tel:
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
어서와 C언어는 처음이지 제14장.
5. 아두이노로 LED와 스위치 제어하기 - 스마트 폰으로 제어하는 아두이노 -.
아두이노 프로그래밍 5일차 – Part2 아두이노 보드간 통신 강사: 김영준 목원대학교 겸임교수.
1차시: 아두이노 설치 및 어두워지면 저절로 켜지는 장치 제작 실습
2016년 2학기 PULSE 4 Experiment 12 – 블루투스 통신.
아두이노 프로그래밍 1일차 – Part4 값출력 및 디지털 읽기 강사: 김영준 목원대학교 겸임교수
3D 프린팅 프로그래밍 01 – 기본 명령어 강사: 김영준 목원대학교 겸임교수.
10차시: 크리스털 LCD 명령어 기초 준비물 SPL-Duino 보드 개요: 크리스털 LCD의 기초 명령어를 익혀 봅니다.
3D 프린팅 프로그래밍 05 – 반복패턴 만들기 강사: 김영준 목원대학교 겸임교수.
아두이노 매트릭스 코딩 매트릭스 기본 명령어 실습 01차시 ㈜헬로앱스 김영준.
아두이노 프로그래밍 (응용과정) 3일차 – Part2 LCD 활용하기 강사: 김영준 목원대학교 겸임교수
PSD센서 명령어 이해하기 목차 재료준비 및 브레드 보드 배선 구성하기 PSD센서 명령어 이해 및 실습 응용 작품 만들기.
클라우드 서버로 사용자 데이터 전송하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
Hanoi Tower.
키패드 센서 및 전역변수 목차 재료준비 및 브레드 보드 배선 구성하기 키패드 센서 이해 전역변수 실습 응용 작품 만들기.
클라우드 서버로 부터 값 읽어오기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
헬로앱스 코딩체험교실 아두이노 자율주행 코딩 ㈜헬로앱스
목차 한국기술교육대학교 강사: 김 영 준 ㈜헬로앱스
센서값 전송하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
아두이노 연결하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
7. 실제 세계와의 통로 센서 정보영재 석사 김석전.
웹서버 기능으로 데이터 읽기 및 제어하기 WiFi 시리얼 보드 활용가이드 김영준
클라우드 서버로 데이터 전송하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
컴퓨터 계측 및 실습 디지털 출력 영남대학교 기계공학부.
^^ Computer Programming 2 dmpr.cnu.ac.kr/~daygax.
공명과 화음(resonance and harmony)
브레드 보드 연결하기 목차 브레드보드 핀구조 아두이노 입출력 핀 이해하기 전원 연결하기 LED 연결하기 LED 회로 작동시키기.
PHP 웹 프로그래밍 (PHP Web Programming) 미리 정의된 함수 문양세 강원대학교 IT대학 컴퓨터과학전공.
한국기술교육대학교 아두이노 기반 펌웨어 개발 (기본과정) 2일차 강사: 김영준 목원대학교 겸임교수.
아두이노 프로그래밍 5일차 – Part1 블루투스 통신 강사: 김영준 목원대학교 겸임교수.
암호학 응용 Applied cryptography
05. General Linear List – Homework
3D 프린팅 프로그래밍 03 – 도형 회전 (손잡이컵 만들기) 강사: 김영준 목원대학교 겸임교수.
생체 신호의 실시간 디지털 처리 7조 홍윤호( )-1등
아두이노 프로그래밍 4일차 – Part1 모바일 로봇 강사: 김영준 목원대학교 겸임교수
엔트리-아두이노 블록 코딩 평원중학교 이동준 자바실험실 JavaLab.org.
다양한 아두이노 개발툴 및 H/W 한국기술교육대학교 아두이노 개발 SW 비교 1 스크래치 2 SPL 블록 3 SPL 스크립트
실습과제 (변수와 자료형, ) 1. 다음 작업 (가), (나), (다)를 수행하는 프로그램 작성
2차시: 스피커를 이용한 멜로디 연주 장치 만들기
Tone 명령어 이해하기 목차 재료준비 및 브레드 보드 배선 구성하기 Tone 명령어 기본 및 프로그램 이해 응용 작품 만들기.
목차 한국기술교육대학교 강사: 김 영 준 ㈜헬로앱스
SPL-Duino 블록 편집기 이용하기 전류센서 블록 만들기 SPL-Duino 블록 편집기를 실행합니다.
Presentation transcript:

아두이노 프로그래밍 2일차 – Part4 아날로그 키패드 활용하기 강사: 김영준 목원대학교 겸임교수 헬로앱스 (www.helloapps.co.kr)

키패드 센서 연결 키패드 센서를 아날로그 0핀에 연결합니다. 0번

키패드 센서 값 확인하기 • 아날로그 0번 핀에 키패드 센서를 연결합니다. • 아날로그 센서값 확인하는 기본 코드를 작성하여 센서값을 확인해 봅니다. void setup() { } void loop() a0 = AnalogRead(0) PrintLine(a0) Delay(100)

키패드 센서 값 확인하기 • 각 버튼별 센서값을 종이에 기록합니다. 버튼 색상 센서 값 노랑 빨강 흰색 초록 파랑

키패드 센서 값 확인하기 • 측정된 센서 값에 대해 각각 -10을 한 값과 +10을 한 값을 계산합니다. 버튼 색상 센서 값 -10값 +10 값 노랑 (예) 254 (예) 244 (예) 264 빨강 흰색 초록 파랑

버튼값 리턴 함수 구현하기 • 키패드 버튼이 눌려지 면 각각 1번 부터 5번까 지 번호가 출력되도록 합니다. void loop() { pin = 0 a = AnalogRead(pin) if (a> 608 && a<628) PrintLine(1) } else if (a> 797 && a< 816) PrintLine(2) else if (a> 895 && a<915) PrintLine(3) else if (a> 666 && a<686) PrintLine(4) else if (a> 724 && a<744) PrintLine(5) Delay(100) • 키패드 버튼이 눌려지 면 각각 1번 부터 5번까 지 번호가 출력되도록 합니다.

버튼값 리턴 함수 구현하기 void loop() { a0 = KeyPad(0) PrintLine(a0) Delay(100) } int KeyPad(int pin) { res = -1 a = AnalogRead(pin) if (a> 608 && a<628) res = 1 } else if (a> 797 && a< 816) res = 2 else if (a> 895 && a<915) res = 3 else if (a> 666 && a<686) res = 4 else if (a> 724 && a<744) res = 5 return res • int KeyPad(int pin) 이 름으로 함수를 정의합니 다. • 핀번호를 인수로 받습 니다. • 키패드 버튼이 눌려지 면 각각 1번 부터 5번까 지 번호가 리턴되도록 합니다. • 키패드 버튼이 눌려지 지 않으면 -1이 리턴되 도록 합니다.

다른 프로그램에서 사용할 수 있도록 라이브러리로 만들기 int KeyPad(int pin) { int res = -1; int a = analogRead(pin); if (a> 608 && a<628) res = 1; } else if (a> 797 && a< 816) res = 2; else if (a> 895 && a<915) res = 3; else if (a> 666 && a<686) res = 4; else if (a> 724 && a<744) res = 5; return res; • 라이브러리로 사용하 여면 C 문번에 맞게 수 정해야 합니다. • 프로그램에 해당 함수 만 남겨 놓고 다른 프로 그램은 모두 삭제합니다. • 프로그램을 AnalogKeyPad.h 파일로 저장합니다.

다른 프로그램에서 라이브러리 불러오기 #include <AnalogKeyPad.h> void setup() { } void loop() a0 = KeyPad(0) PrintLine(a0) Delay(100) • 새로운 스크립트 파일을 생 성합니다. • 프로그램 상단에 #include <AnalogKeyPad.h> 를 추가합 니다. • KeyPad 함수를 활용합니다.

실습: 가청주파수 테스트 장치 만들기 • 디지털 2번에 스피커를 연결합니다. • 프로그램 상단에 #include <AnalogKeyPad.h> 를 추가합니다. • 키패드 1번은 진동수를 100씩 증가시킵니다. • 키패드 2번은 진동수를 100씩 감소시킵니다. • 현재의 진동수를 화면에 출력하고 소리를 발생시킵니다.

실습: 가청주파수 테스트 장치 만들기 #include <AnalogKeyPad.h> freq = 0 void setup() { } void loop() a0 = KeyPad(0) if (a0 == 1) freq = freq + 100 PrintLine(freq) else if (a0 == 2) freq = freq - 100 Tone(2, freq, 1000) Delay(100)

실습: 5음계 오르간 연주장치 만들기 • 버튼이 눌려지는 동안 계속 음이 연주됩니다. • 도: 262 (진동수) • 레: 294 (진동수) • 미: 330 (진동수) • 파: 349 (진동수) • 솔: 392 (진동수)

실습: 5음계 오르간 연주장치 만들기 #include <AnalogKeyPad.h> void setup() { } void loop() a0 = KeyPad(0) if (a0 == 1) //도 262 Tone(2, 262, 200) else if (a0 == 2) //레 294 Tone(2, 294, 200) else if (a0 == 3) //미 330 Tone(2, 330, 200) else if (a0 == 4) { //파 349 Tone(2, 349, 200) } else if (a0 == 5) //솔 392 Tone(2, 392, 200) Delay(100)

실습: 5음계 피아노 연주장치 만들기 • 버튼이 눌려지면 0.5초 동안만 음이 연주됩니다. • 도: 262 (진동수) • 레: 294 (진동수) • 미: 330 (진동수) • 파: 349 (진동수) • 솔: 392 (진동수)

실습: 5음계 피아노 연주장치 만들기 #include <AnalogKeyPad.h> Pressed = false void setup() { } void loop() a0 = KeyPad(0) if (a0 == 1 && Pressed == false) //도 262 Tone(2, 262, 500) Delay(500) else if (a0 == 2 && Pressed == false) //레 294 Tone(2, 294, 500) else if (a0 == 3 && Pressed == false) //미 330 Tone(2, 330, 500) else if (a0 == 4 && Pressed == false) { //파 349 Tone(2, 349, 500) Delay(500) } else if (a0 == 5 && Pressed == false) //솔 392 Tone(2, 392, 500) if (a0 > 0) Pressed = true else Pressed = false Delay(100)