找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1104|回复: 0
打印 上一主题 下一主题
收起左侧

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

[复制链接]
跳转到指定楼层
楼主
0x00前言


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


0x01实验器材


TPYBoard v102 开发板 1
耳机或音响 1
杜邦线 若干


0x02前期准备


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



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

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

3ubuntu 安装方法:

  
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类库。在最开始的教程文章中可以直接下载。



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

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

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

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


源码和wav文件下载地址

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




0x04播放效果


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




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




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



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

示意图


  
TPYBoard  v102
  
耳机插头
X5
左声道(L)
GND
GND


实物图






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

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表