버튼과 소리에 반응하는 프로그램 만들기(천재교육 정보교과서): 두 판 사이의 차이

아두위키 : Arduwiki
잔글편집 요약 없음
잔글편집 요약 없음
 
(같은 사용자의 중간 판 6개는 보이지 않습니다)
7번째 줄: 7번째 줄:


=== 사용 하드웨어 ===
=== 사용 하드웨어 ===
아두이노 보드
아두이노와 교과서에 주어진 센서, 모듈을 사용합니다.


소리 센서
* [[아두이노 사용 방법|아두이노 보드]]
* [[소리 감지 모듈(KY-037)]]
* [[택트 스위치(Tact Switch)|버튼(택트 스위치)]]


스위치
각 모듈 별 더 자세한 사용 방법과 정보는 링크 문서를 참고하세요.




=== 연결 ===
=== 연결 ===
이미지
[[소리 감지 모듈(KY-037)]]의 D0 핀은 사용하지 않았습니다.


[[택트 스위치(Tact Switch)|택트 스위치]]는 풀다운 저항을 활용했습니다. 풀업, 풀다운, 내부 풀업 저항에 대한 자세한 내용은 [[택트 스위치(Tact Switch)|택트 스위치]] 문서를 참고하세요.
[[파일:천재교육고교정보교과서P230회로.jpg|가운데|class=coders100]]


=== 엔트리 코딩 ===
=== 엔트리 코딩 ===
조도 센서 값에 따라 켜지는 LED 개수가 달라집니다.
엔트리 설치 및 하드웨어 연결 과정은 [[주변 밝기에 따라 자동으로 불이 켜지고 꺼지는 LED 만들기(천재교육 정보교과서)]] '''문서의 엔트리 설치 ~ 하드웨어 연결 파트'''를 참고하세요.
 
 
==== 배경 추가 ====
1. 오브젝트 추가하기 버튼을 클릭합니다.
 
[[파일:천재교육고교정보교과서예제1배경추가1.jpg|class=coders70]]
 
 
2. 배경을 선택하여 추가합니다.
 
[[파일:천재교육고교정보교과서P230배경추가2.jpg|class=coders70]]
 
 
==== 엔트리봇, 물풍선 오브젝트 추가 ====
1. 기존 화면에 있던 엔트리봇은 제거하고, 오브젝트 추가에서 (1)엔트리봇 (뛰는 모습)을 추가합니다.
 
[[파일:천재교육고교정보교과서P230엔트리봇추가.jpg|class=coders70]]
 
 
2. 우측 상단에 물풍선을 검색하여 물풍선 오브젝트를 추가합니다.
 
[[파일:천재교육고교정보교과서P230물풍선추가.jpg|class=coders70]]
 
 
==== 엔트리봇 코딩 ====
디지털 2번 센서([[택트 스위치(Tact Switch)|택트 스위치]])를 누르면 엔트리봇이 오른쪽으로 움직이고, 누르지 않으면 왼쪽으로 움직이는 코드입니다.
 
[[파일:천재교육고교정보교과서P230엔트리봇코드.jpg|class=coders70]]
 


사용 환경에 따라 var 값의 기준을 변경해주세요.
==== 물풍선 코딩 ====
'''import''' '''Entry'''
아날로그 A0 센서([[소리 감지 모듈(KY-037)]])의 기준값보다 낮으면(소음이 없으면) 물풍선이 아래로 내려가고, 기준값보다 높으면(소음이 크면) 물풍선이 위로 올라가는 코드입니다.
'''import''' '''Arduino'''
'''def''' when_start():
    '''while''' '''True''':
        var = Arduino.analogRead("A0")
        '''if''' var > 0:
            Arduino.digitalWrite(8,"HIGH")
'''else''':
Arduino.digitalWrite(8,"LOW")
        '''if''' var > 30:
            Arduino.digitalWrite(9,"HIGH")
'''else''':
Arduino.digitalWrite(9,"LOW")
        '''if''' var > 60:
            Arduino.digitalWrite(10,"HIGH")
'''else''':
Arduino.digitalWrite(10,"LOW")
        '''if''' var > 90:
            Arduino.digitalWrite(11,"HIGH")
'''else''':
Arduino.digitalWrite(11,"LOW")
        '''if''' var > 120:
            Arduino.digitalWrite(12,"HIGH")
'''else''':
Arduino.digitalWrite(12,"LOW")
간단한 반복문을 추가한 코드입니다. 동작은 위 코드와 동일합니다.
'''import''' '''Entry'''
'''import''' '''Arduino'''
'''def''' when_start():
    '''while''' '''True''':
ledpin = 8
k = 0
var = Arduino.analogRead("A0")
'''for''' i '''in''' range(5):
'''if''' var > k:
Arduino.digitalWrite(ledpin,"HIGH")
'''else''':
Arduino.digitalWrite(ledpin,"LOW")
ledpin += 1
k += 30


=== 실행결과 ===
[[파일:천재교육고교정보교과서P230물풍선코드.jpg|class=coders70]]
이미지

2024년 8월 29일 (목) 13:47 기준 최신판

본 위키는 천재교육 고교 정보교과서 내 P.230 ~ 231 버튼과 소리에 반응하는 프로그램 만들기에 해당하는 내용을 서술합니다.


P. 230 ~ 231 버튼과 소리에 반응하는 프로그램 만들기

버튼의 눌림에 반응하여 엔트리 캐릭터가 좌우로 움직이고, 소리에 반응하여 물풍선이 움직이는 프로그램입니다.


사용 하드웨어

아두이노와 교과서에 주어진 센서, 모듈을 사용합니다.

각 모듈 별 더 자세한 사용 방법과 정보는 링크 문서를 참고하세요.


연결

소리 감지 모듈(KY-037)의 D0 핀은 사용하지 않았습니다.

택트 스위치는 풀다운 저항을 활용했습니다. 풀업, 풀다운, 내부 풀업 저항에 대한 자세한 내용은 택트 스위치 문서를 참고하세요.

엔트리 코딩

엔트리 설치 및 하드웨어 연결 과정은 주변 밝기에 따라 자동으로 불이 켜지고 꺼지는 LED 만들기(천재교육 정보교과서) 문서의 엔트리 설치 ~ 하드웨어 연결 파트를 참고하세요.


배경 추가

1. 오브젝트 추가하기 버튼을 클릭합니다.


2. 배경을 선택하여 추가합니다.


엔트리봇, 물풍선 오브젝트 추가

1. 기존 화면에 있던 엔트리봇은 제거하고, 오브젝트 추가에서 (1)엔트리봇 (뛰는 모습)을 추가합니다.


2. 우측 상단에 물풍선을 검색하여 물풍선 오브젝트를 추가합니다.


엔트리봇 코딩

디지털 2번 센서(택트 스위치)를 누르면 엔트리봇이 오른쪽으로 움직이고, 누르지 않으면 왼쪽으로 움직이는 코드입니다.


물풍선 코딩

아날로그 A0 센서(소리 감지 모듈(KY-037))의 기준값보다 낮으면(소음이 없으면) 물풍선이 아래로 내려가고, 기준값보다 높으면(소음이 크면) 물풍선이 위로 올라가는 코드입니다.