三十、实现用声音值控制亮灯的效果
1. import ybc_robot #导入ybc robot 模块
2. import time #导入time 模块
3. import ybc_tools #导入 ybc tools 模块
4.
5.
6 .#创建灯带对象 rs,接口选择 P1
7 rs =ybc_robot.RGBStrip('P1')
8 #创建声音传感器对象ss,接口选择 A1
9 ss=ybc robot.SoundSensor('A1')
10
11 # 使用 while 循环结构与 for循环结构的嵌套
12 #重复执行获取声音值将声音值转换为灯珠亮起个数
13 #实现用获取的声音值控制灯带的亮灯效果
14 while True:
15 # 获取声音传感器返回的声音值
16 #保存在变量 n1中
17 n1=ss.loudness()
18 # 将获取的声音值转换为灯珠亮起的个数
19 # 保存在变量 n2 中
20 n2=ybc_tools.map_value(n1,
21 [0,1023],[0,9])
22 # 创建控制灯带亮度的列表
23 l = [ ]
24 # 使用 for循环语句,控制灯珠亮起的个数
25 for i in range(n2):
26 # 依次添加灯带的亮度,设为50
27 l.append(50)
28 # 控制灯带亮起对应的灯,颜色为红色
29 rs.turn on(l,'红色·)
30 time.sleep(0.1) #程序休眠0.1秒
31 rs.turn off() #关闭 RGB 灯带
32 time.sleep(0.1) #程序休眠0.1秒
网友评论