音乐播放
准备
硬件:
- FireBeetle-ESP32 × 1
- FireBeetle Covers-Camera&Audio Media Board模块 × 1 (点击查看模块详情)
- SD卡 × 1
- 耳机 × 1
软件:
- uPyCraft IDE
代码位置:
File → Examples → Audio → player.py
实验步骤
1. 将SD卡和耳机分别插入模块的相应位置,如下图
2. 下载运行 player.py 文件,具体代码如下
注意: 修改程序中音乐的路径,这里只支持wav格式的音频。
#硬件平台:FireBeetle-ESP32
from machine import IIS
from machine import Pin
import time
player = IIS(IIS.PLAYER) #创建iis对象
button = Pin(16, Pin.IN)
def mycb(path):
print("callback : play " + path + " is done")
player.init() #初始化播放器
player.load('/sd/It\'s My Life - Bon Jovi.wav') #加载音乐
player.queue('/sd//dir1///dir2/Reality.wav') #加载下一个要播放的音乐
player.set_volume(30) #设置音量
player.play(0, 0.0) #设置重复播放次数和开始时间
player.set_endcallback(mycb) #设置回调
#捕获异常,如果意外中断,停止播放
try:
while True:
if button.value() == 0:
if player.get_busy(): #暂停播放
player.pause()
else: #继续播放
player.unpause()
time.sleep(0.5)
except:
player.stop()
3. 点击模块上的USER按钮即可暂停播放/继续播放音乐。