“吴泽原-2019080017-2021A-M08-92-WW8”版本间的差异
来自iCenter Wiki
2019080017(讨论 | 贡献) |
2019080017(讨论 | 贡献) |
||
(2位用户的3个中间修订版本未显示) | |||
第1行: | 第1行: | ||
+ | 本次课程中,老师教我们使用python和Linux语法,进行语音控制的编程。查找资料后,在课程中实现了语音控制的LED灯管和使用蜂鸣器播放“两只老虎”的音乐。 | ||
+ | |||
树莓派——无源蜂鸣器 | 树莓派——无源蜂鸣器 | ||
− | #!/usr/bin/env python3 | + | "#!/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] | ||
− | def makerobo_setup(): | + | 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 | global makerobo_Buzz | ||
makerobo_Buzz = GPIO.PWM(11, 440) | makerobo_Buzz = GPIO.PWM(11, 440) | ||
第22行: | 第25行: | ||
#loop | #loop | ||
− | def makerobo_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(): | + | def makerobo_destory(): |
− | + | makerobo_Buzz.stop() | |
− | + | GPIO.output(makerobo_Buzzer,1) | |
− | + | GPIO.cleanup() | |
− | if __name__=='__main__': | + | 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) |
2021年12月21日 (二) 05:07的最后版本
本次课程中,老师教我们使用python和Linux语法,进行语音控制的编程。查找资料后,在课程中实现了语音控制的LED灯管和使用蜂鸣器播放“两只老虎”的音乐。
树莓派——无源蜂鸣器
"#!/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)