2019独角兽企业重金招聘Python工程师标准>>>

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

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

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 播放效果

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

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

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

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

示意图

TPYBoard v102

耳机插头

X5

左声道(L)

GND

GND

实物图

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

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

MicroPython开发板:TPYBoard v102 播放音乐实例相关推荐

  1. python 开发板 播放音乐_MicroPython开发板:TPYBoard v102 播放音乐实例

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

  2. python开发板卡驱动开发_一款能让你发挥无限创意的MicroPython开发板—TPYBoard开发板测...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 今天 静电袋包装,打开袋子简单明了:TPYBoard开发板一块.跳线帽一个.数据线一条.说明书一份.通过数据线将开发板与电脑连接就可以DIY各种你想要的P ...

  3. micropython开发板有什么用_MicroPython入门:能跑MicroPython开发板大盘点!

    相信对于很多刚刚接触MicroPython的DIY创客来说,首先是被一些大神的作品吸引,然后有冲动自己动手,却发现入门很难,特别是面对各式各样的开发板不知如何选择.目前市面上关于MicroPython ...

  4. TPYBoard:一款可以发挥无限创意的MicroPython开发板

    2019独角兽企业重金招聘Python工程师标准>>> 今天给大家带来一款MicroPython开发板的拆解和测评.所谓MicroPython也就是运行在单片机上的Python.Py ...

  5. 【MM32F5270开发板试用】播放TF卡WAV格式音乐,I2S驱动CS4344

    [MM32F5270开发板试用]播放TF卡WAV格式音乐,I2S驱动CS4344 上四篇文章: [MM32F5270开发板试用]一.依靠SPI_SD,移植FatFs文件系统 [MM32F5270开发板 ...

  6. TurnipBit:可以带着孩子一起玩编程的MicroPython开发板!

    2019独角兽企业重金招聘Python工程师标准>>> 从小就编程"有可能不只是名人传记里才能看到的故事,现在"全民编程"已成一股热潮,那么让孩子接触编 ...

  7. 乐鑫esp8266模块MicroPython开发板MQTT物联网人工智能最小系统

    简 介: ※对于购买自网络的基于ESP8266的实验模块进行了初步的测试,它其中的一些示例进行了练习.特别是对于基于ESP8266的特殊的一些外设的测试. 关键词: ESP8266,MicroPyth ...

  8. python 开发版-高性能、低成本、支持MicroPython开发板有哪些?

    Python的开放.简洁.黏合正符合了现发展阶段对大数据分析.可视化.各种平台程序协作产生了快速的促进作用.自Python3的发布到现在已有五六年的时间,从刚发布的反对声音到慢慢被接受与喜欢经过了太漫 ...

  9. micropython开发板性能_MicroPython支持的开发板:高性能、低成本创客首选

    原标题:MicroPython支持的开发板:高性能.低成本创客首选 Python的开放.简洁.黏合正符合了现发展阶段对大数据分析.可视化.各种平台程序协作产生了快速的促进作用.自Python3的发布到 ...

最新文章

  1. Advanced Installer 打包程序并支持自动升级
  2. 30分钟正则表达式入门。
  3. python怎么安装第三方库-vs2017怎么安装python第三方包
  4. 【知识星球】Attention网络结构上新,聚焦才能赢
  5. 5年 Python 功力,总结了 10 个开发技巧
  6. PHP基于单例模式编写PDO类的方法
  7. 使用ASP.NET Core 3.x 构建 RESTful API - 4.1 面向外部的Model
  8. Ext 与 Jquery 的结合应用
  9. Python 逆向抓取 APP 数据
  10. net.sf.ehcache.util.UpdateChecker
  11. html 富文本编辑器相关--向编辑器内部插入文字图片等各种dom元素 通用方法
  12. Android自定义弹窗页面,Android编程实现的自定义弹窗(PopupWindow)功能示例
  13. Webpack 学习笔记
  14. 手动释放linux缓存——/proc/sys/vm/drop_caches
  15. “互联网+政务”是什么?
  16. 【原】拯救你的机械硬盘!
  17. 《redis设计与实现》
  18. python开发环境部署以及调试教程
  19. 加拿大国家银行开展区块链试点,简化“复杂”谈判流程
  20. 机器人陈菁_党建铸造梦想,科创引领未来—2020年玉林市中小学机器人创客竞赛活动圆满成功...

热门文章

  1. android NDk编程
  2. @responseBody注解的使用
  3. paloalto防火墙执行初始配置
  4. Tensorflow2.0(Keras)转换TFlite
  5. 浅谈SpringBoot的基本概念与简单的使用与yml文件的基本使用, 整合Redis,整合MyBatis
  6. 前端开发的正确姿势——各种文件的目录结构规划及引用
  7. 虚拟机中的Linux安装VMware Tools的方法
  8. 管道实现进程间通讯 、WaitNamedPipe
  9. Chapter09-内核模式下的线程同步之事件内核对象
  10. 计划任务工具 cron 的配置和说明