반응형
이번 목표는 부저(Buzzer)를 이용하여 다양한 소리를 내는 것이다.
[준비물]
(1) 라즈베리파이 3 Model B+
(요즘 나오는 최신거 쓰면 된다)
(2) 피에조부조
(3) 점퍼 케이블
[설치]
라즈베리파이 OS가 아래와 같이 설치되어 있다는 가정하에 진행한다.
라즈베리파이 버전
Linux raspberrypi 4.19.57-v7+ #1244 SMP Thu Jul 4 18:45:25 BST 2019 armv7l GNU/Linux
개발 라이브러리를 설치한다.
sudo apt-get install python-dev sudo apt-get install python-rpi.gpio |
[연결]
라즈베리파이와 피에조부저를 점퍼 케이블로 연결해야한다.
아래는 라즈베리파이의 핀 내용이다.
피에조부저는 전원과 GPIO가 필요하다.
3.3V와 GPIO12를 연결한다.
출처 : www.theengineeringprojects.com
Sample Code
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
gpio_pin = 12
scale = [ 261, 294, 329, 349, 392, 440, 493, 523 ]
GPIO.setup(gpio_pin, GPIO.OUT)
list = [4, 4, 5, 5, 4, 4, 2, 4, 4, 2, 2, 1]
try:
p = GPIO.PWM(gpio_pin, 100)
p.start(100)
p.ChangeDutyCycle(90)
for i in range(12):
p.ChangeFrequency(scale[list[i]])
if i == 6:
time.sleep(1)
else :
time.sleep(0.5)
p.stop()
finally:
GPIO.cleanup()
[설명]
1. gpio12번에 연결을 했으니 gpio_pin 변수에 12를 넣고 setup을 한다.
2. scale은 도레미파솔라시도에 대한 주파수 값이다.(아래 표를 참고, 반올림함)
3. 솔솔라라솔솔미솔솔미미레를 list에 넣는다.
4. for loop을 돌면서 주파수 값을 변경한다.
- 주파수는 아래 표를 참고(출처 : 구글 이미지)
출처/인용
반응형
'장인으로의 여정 > 라즈베리파이' 카테고리의 다른 글
라즈베리파이 NFC Reader 편 (0) | 2019.10.10 |
---|---|
[라즈베리파이3] 농구게임 설치 (2) | 2016.06.15 |
[라즈베리파이3] Switch(신호 주기) (0) | 2016.06.15 |
댓글