吴泽原-2019080017-2021A-M08-92-WW8
来自iCenter Wiki
树莓派——无源蜂鸣器
"#!/usr/bin/env python3"
import RPi.GPIO as GPIO import time makerobo_Buzzer = 11
Tong_CL = [0,131,147,165,175,196,211,248] Tong_CM = [0,262,294,330,350,393,441,495] Tong_CH = [0,525,589,661,700,786,882,990]
makerobo_song_1 = [Tong_CM[1],Tong_CM[2],Tong_CM[3],Tong_CM[1],Tong_CM[3],Tong_CM[5],Tong_CM[5],Tong_CM[3],Tong_CM[6],Tong_CM[6],Tong_CM[6],Tong_CM[5],Tong_CM[5],Tong_CM[3]] makerobo_beat_1=[1,1,1,1,1,1,2,1,0.5,0.5,1,1,1,1]
def makerobo_setup(): GPIO.setmode(GPIO.BOARD) GPIO.setwarnings(False) GPIO.setup(11,GPIO.OUT) global makerobo_Buzz makerobo_Buzz = GPIO.PWM(11, 440) makerobo_Buzz.start(50)
- loop
def makerobo_loop(): while True: for i in range(1,len(makerobo_song_1)): makerobo_Buzz.ChangeFrequency(makerobo_song_1[i]) time.sleep(makerobo_beat_1[i]*0.5) time.sleep(1)
def makerobo_destory(): makerobo_Buzz.stop() GPIO.output(makerobo_Buzzer,1) GPIO.cleanup()
if __name__=='__main__': makerobo_setup() try: makerobo_loop() except KeyboardInterrupt: makerobo_destory()
"12.py"
import RPi.GPIO as GPIO import time
GPIO.setmode(GPIO.BCM) GPIO.setup(25,GPIO.IN) GPIO.setup(5,GPIO.OUT)
Tong_CL = [0,131,147,165,175,196,211,248] Tong_CM = [0,262,294,330,350,393,441,495] Tong_CH = [0,525,589,661,700,786,882,990]
GPIO.setwarnings(False) GPIO.setup(17,GPIO.OUT) global makerobo_Buzz makerobo_Buzz = GPIO.PWM(17, 440) makerobo_song_1 = [Tong_CM[1],Tong_CM[2],Tong_CM[3],Tong_CM[1],Tong_CM[3],Tong_CM[5],Tong_CM[5],Tong_CM[3],Tong_CM[6],Tong_CM[6],Tong_CM[6],Tong_CM[5],Tong_CM[5],Tong_CM[3]] makerobo_beat_1=[1,1,1,1,1,1,2,1,0.5,0.5,1,1,1,1]
while True: input1=GPIO.input(25) if(input1 == True): GPIO.output(5,GPIO.HIGH) else: GPIO.output(5,GPIO.LOW)