ESP8266 MP3

来自Jack's Lab
(版本间的差异)
跳转到: 导航, 搜索
(Quick Start)
(Quick Start)
 
(未显示1个用户的25个中间版本)
第1行: 第1行:
 
== Quick Start ==
 
== Quick Start ==
  
准备一块 Noduino Falcon 开发板,一根 micro USB 连接线:
+
准备一块 Noduino Falcon / Nodemcu V1.0 开发板,一根 micro USB 连接线:
  
 
[[文件:Falcon-v1.0-1000.jpg | 600px]]
 
[[文件:Falcon-v1.0-1000.jpg | 600px]]
 +
 +
[[文件:Falcon-v2.4-800-wiki.png | 600px]]
  
  
第48行: 第50行:
  
  
因此,找一个的小喇叭,一头接 Noduino Falcon 板的 RX 口 (D0),一头接 Noduino Falcon 板 的 GND 就能听到音乐声音!
+
因此,找一个小喇叭,一头接 Noduino Falcon 板的 RX 口 (D0),一头接 Noduino Falcon 板 的 GND 就能听到音乐声音!
  
[[文件:Noduino-falcon-speaker.jpg]]
+
[[文件:Noduino-falcon-speaker.jpg | 600px]]
 +
 
 +
<br><br>
 +
 
 +
== 改进 ==
 +
 
 +
当然,直接出来的信号很微弱,要是喇叭的阻抗稍高点,声音就很小,要贴近喇叭才能听见,这个时候,可以用简单的三极管放大一下信号。或者用现成的功放模块,比如:PAM8406 数字功放板,PAM8403 功放板 等等,淘宝的价格很便宜:
 +
 
 +
 
 +
[[文件:PAM8403-module.jpg]]
 +
 
 +
 
 +
接线如下,输入接 L(左声道)或者 R(右声道),喇叭得接对应的 L+ 或者 R+ :
 +
 
 +
[[文件:PAM8403-module-pin.jpg]]
 +
 
 +
 
 +
接上后,就发现声音变大了,爽!
 +
 
 +
当然,同时背景噪声也很明显,这个需要做进一步的改进、尝试、折腾。。。
  
  
当然,直接出来的信号很微弱,要是喇叭的阻抗稍高点,声音就很小,要贴近喇叭才能听见,这个时候,可以用简单的三极管放大一下信号。或者用现成的功放模块
+
整个源代码都在 noduino-sdk/sketch/mp3 这个目录下,或者直接 github: https://github.com/icamgo/noduino-sdk/tree/master/sketch/mp3/
  
 
<br><br>
 
<br><br>
  
== 使用 DAC ==
+
== 提升 ==
  
用一片 I2S 接口的  DAC:
+
=== 使用 DAC ===
 +
 
 +
可尝试用一片 I2S 接口的  DAC,硬件数模转换:
  
 
[http://wiki.jackslab.org/images/TDA1543.PDF TDA1543 Datasheet]
 
[http://wiki.jackslab.org/images/TDA1543.PDF TDA1543 Datasheet]
第67行: 第90行:
  
  
可改善软件解码的不如人意
+
可改善纯软件的不如人意
  
  
第77行: 第100行:
  
 
<br><br>
 
<br><br>
 +
 +
=== 使用 I2S 声卡 ===
 +
 +
;;WM8960G
 +
 +
 +
[[文件:WM8960-pin.jpg]]
 +
 +
 +
* BCLK: bit clock, basic clock for the data
 +
* LRCLK: left channel/right channel clock
 +
* DATA: used to send data
 +
 +
 +
* LRCK  ---- 左右声道控制信号
 +
* SCLK  ---- 串行时钟
 +
* SDI  ---- 数据输入
 +
* SDO  ---- 数据输出
 +
* CDCLK  ---- 为编解码芯片提供系统同步时钟
 +
 +
 +
参考电路:
 +
 +
[[文件:Wm8960-app.jpg | 900px]]
 +
 +
 +
I2S interface, used to transfer data to WM8960
 +
 +
I2C interface, used to transfer command to WM8960
 +
 +
 +
 +
* http://www.epubit.com.cn/book/onlinechapter/34489
 +
 
<br><br>
 
<br><br>
 
<br><br>
 
<br><br>

2017年5月8日 (一) 13:43的最后版本

目录

[编辑] 1 Quick Start

准备一块 Noduino Falcon / Nodemcu V1.0 开发板,一根 micro USB 连接线:

Falcon-v1.0-1000.jpg

Falcon-v2.4-800-wiki.png


获取 noduino-sdk:

$ git clone --recursive git://github.com/icamgo/noduino-sdk.git noduino-sdk


生成 toolchain (you need Python 2.7):

$ cd noduino-sdk/toolchain
$ ./gen.py

打开 app/user/playerconfig.h 修改 AP_NAME 和 AP_PASSWORD 为你所用之无线路由 AP,然后编译、刷机:

$ cd ../sketch/mp3
$ vim app/user/playerconfig.h
$ make flash


不同平台下,你的串口设备号可能不一样,确认一下你的串口设备,比如在 Windows 下 Falcon 开发板可能被识别为 COM7(设备管理器里查看),则:

$ make flash ESPPORT=COM7


各平台下,Noduino SDK 使用,更多参考:


串口刷机完成后,系统会连接你的无线路由,然后去访问 http://noduino.org/fair.mp3 这个文件,这个过程没问题的话,就会自动播放。

声音信号(模拟信号)输出到 Noduino Falcon 板的 RX 口 (GPIO3)


因此,找一个小喇叭,一头接 Noduino Falcon 板的 RX 口 (D0),一头接 Noduino Falcon 板 的 GND 就能听到音乐声音!

Noduino-falcon-speaker.jpg



[编辑] 2 改进

当然,直接出来的信号很微弱,要是喇叭的阻抗稍高点,声音就很小,要贴近喇叭才能听见,这个时候,可以用简单的三极管放大一下信号。或者用现成的功放模块,比如:PAM8406 数字功放板,PAM8403 功放板 等等,淘宝的价格很便宜:


PAM8403-module.jpg


接线如下,输入接 L(左声道)或者 R(右声道),喇叭得接对应的 L+ 或者 R+ :

PAM8403-module-pin.jpg


接上后,就发现声音变大了,爽!

当然,同时背景噪声也很明显,这个需要做进一步的改进、尝试、折腾。。。


整个源代码都在 noduino-sdk/sketch/mp3 这个目录下,或者直接 github: https://github.com/icamgo/noduino-sdk/tree/master/sketch/mp3/



[编辑] 3 提升

[编辑] 3.1 使用 DAC

可尝试用一片 I2S 接口的 DAC,硬件数模转换:

TDA1543 Datasheet


TDA1542-breakout.jpg


可改善纯软件的不如人意


接线:

  • I2S_BCK --- GPIO15 --- Noduino_Falcon D3
  • I2S_WS --- GPIO2 --- Noduino_Falcon D2
  • I2S_DATA --- GPIO3 --- Noduino_Falcon D0



[编辑] 3.2 使用 I2S 声卡

WM8960G


WM8960-pin.jpg


  • BCLK: bit clock, basic clock for the data
  • LRCLK: left channel/right channel clock
  • DATA: used to send data


  • LRCK ---- 左右声道控制信号
  • SCLK ---- 串行时钟
  • SDI ---- 数据输入
  • SDO ---- 数据输出
  • CDCLK ---- 为编解码芯片提供系统同步时钟


参考电路:

Wm8960-app.jpg


I2S interface, used to transfer data to WM8960

I2C interface, used to transfer command to WM8960


























个人工具
名字空间

变换
操作
导航
工具箱