MicroPython开发板:TPYBoard v102 播放音乐实例

 

0x00 前言

 

前段时间看到TPYBoard的技术交流(q群号:157816561)里有人问关于TPYBoard播放音乐的问题。最近抽空看了一下文档介绍,着手做了个实验。

 

0x01 实验器材

 

TPYBoard v102 开发板 1块

耳机或音响 1个

杜邦线 若干

 

0x02 前期准备

 

看一下TPYBoard的官方DOCS的上面的资料:

http://docs.tpyboard.com/zh/latest/tpyboard/tutorial/amp_skin/?highlight=wav

 

e233a77795278c73ede2d67d1b7103ddd78.jpg

 

  1. 首先我们需要一个可以播放的.wav音频文件,通过文档的描述和测试,发现只能播放2秒左右的音乐,文件大小应小于50KB,否则会提示错误。

 

2、wav的格式要求:比特率8-bit , 采样频率22050 Hz。直接可以使用avconv工具将mp3工具转换成可以播放的wav文件。

 

3、ubuntu 安装方法:

 

sudo apt-get install ffmpeg

sudo apt-get install libav-tools

 

 

4、安装完成后,直接执行命令。

 

avconv -i 2.mp3 -ar 22050 -codec pcm_u8 test2.wav

 

5、还得需要一个TF内存卡,放入源码和wav音频文件后,开发板本身的FLASH空间会不足。

 

0x03 程序源码

 

main.py

import wave

from pyb import DAC

dac = DAC(1)

f = wave.open('/sd/test2.wav')

dac.write_timed(f.readframes(f.getnframes()), f.getframerate())

 

通过上面的源码中,可以看出来主要是用到wave类库。在最开始的教程文章中可以直接下载。

 

cd9156f066819b886061750a43871921cd8.jpg

 

6、点击红框可直接下载wave.py,在wave文件中又引入了chunk.py,点击蓝框直接下载。

 

7、将main.py、wave.py 和chunk.py 直接拷贝到开发板的TF卡中即可。

 

8、点击绿框中可以下载官方提供的wav播放文件test.wav。

 

9、通过上面我自己制作了一个test2.wav文件,大家也可以尝试自己制作音频文件播放。

 

源码和wav文件下载地址

https://github.com/PakchoiFood/TPYBoardV102-PlayMusic

 

 

0x04 播放效果

 

先了解一下耳机插头的结构。

0131e236c6285d926b7d74fc0889a5d08df.jpg

 

10、上图是三段的耳机插头图,比如我们的音响插头、收音机插头等。

 

 

11、上面是四段的耳机插头图,我们平时用在手机上的耳机插头一般都是四段的,中间多了麦克的功能。可能有些国际上的标准,MIC麦克和GND接地的位置会倒过来。

 

 

12、大家通过main.py 源码可以看到,我们使用的是DAC(1),所以需要将X5引脚和左声道连接,GND引脚和耳机插头上的GND连接。

 

示意图

 

TPYBoard v102

耳机插头

X5

左声道(L)

GND

GND

 

实物图

 

9f66e605f0d778b6eabcabd3f2188ef3ef7.jpg

 

 

13、接好线后,重新运行一下程序,我们就可以听到声音啦。

转载于:https://my.oschina.net/micropython/blog/2221360

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值