匿名
未登录
登录
丢石头百科
搜索
查看“WM8960 Audio HAT”的源代码
来自丢石头百科
名字空间
页面
讨论
更多
更多
页面选项
查看
查看源代码
历史
←
WM8960 Audio HAT
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
<div class="tabber"> {{Product |images=[[File:WM8960-Audio-HAT-1.jpg|360px|alt=WM8960-Audio-HAT|link=https://{{SERVERNAME}}/shop/WM8960-Audio-HAT.htm]] |categories= {{Category|树莓派}} {{Category|音频}} |brand=Waveshare |features=WM8960音频编码解码 |interfaces={{Category|I2S接口}} }} <div class="tabbertab" title="说明"> =产品简介= ==前言== 本产品是基于树莓派而设计的音频模块,采用WM8960低功耗立体声编解码器,通过I2C接口控制,I2S接口传输音频。板载标准3.5mm耳机接口,可通过外接耳机播放音乐,同时也可通过双通道喇叭接口外接喇叭播放。板子左右两边有一个高质量MEMS硅麦克风,可以立体声录音。<br /> ==产品特性== *供电电压:5V *逻辑电压:3.3V *音频编解码芯片:WM8960 *控制接口:I2C *音频接口:I2S *DAC信噪比:98dB *ADC信噪比:94dB *耳机驱动:40mW (16Ω@3.3V) *扬声器驱动:1W per channel (8Ω BTL) ==硬件资源== [[file:wm8960_audio_hat.png|900px]]<br /> LP、LN分别对应左扬声器的正、负极; RP、RN分别对应右扬声器的正、负极。<br /> {|border=1; style="width:700px;" |-style="background:#0000ff; color:white;" align="center" |功能引脚||树莓派引脚(BCM)||描述 |-align="center" |5V||5V||电源正(5V电源输入) |-align="center" |GND||GND||电源地 |-align="center" |SDA||P2/SDA||I2C数据输入 |-align="center" |SCL||P2/SDA||I2C时钟输入 |-align="center" |CLK||P18||I2S位时钟输入 |-align="center" |LRCLK||P19||I2S帧时钟输入 |-align="center" |DAC||P21||I2S串行数据输出 |-align="center" |ADC||P20||I2S串行数据输入 |-align="center" |BUTTON||P17||自定义按键 |} =树莓派使用= <font color="#FF0000"> 本产品例程只适用于树莓派官方系统(Raspbian)<br /> </font> ==安装驱动== 如果你是国内用户,用官方源可能会比较慢,整个安装过程下载需要很长时间且可能会更新失败,因此可以换成阿里源:<br /> <pre> sudo nano /etc/apt/sources.list </pre> 将官方源开头用#注释,并添加阿里源:<br /> <pre> #deb-src http://archive.raspberrypi.org/debian/ stretch main deb http://mirrors.aliyun.com/raspbian/raspbian/ buster main contrib non-free rpi deb-src http://mirrors.aliyun.com/raspbian/raspbian/ buster main contrib non-free rpi </pre> 屏蔽树莓派默认音频:<br /> <pre> sudo nano /boot/config.txt </pre> 找到dtparam=audio=on,在最前面加上#号,将其改成#dtparam=audio=on,改成ctrl+c然后Y保存退出<br /> 更新软件源:<br /> <pre> sudo apt-get update sudo apt-get upgrade </pre> 检查内核版本:<br /> <pre> uname -a 如果内核版本低于5.0(即树莓派系统是2020-05-27之前)下载如下驱动 git clone -b rpi-4.9.y https://github.com/waveshare/WM8960-Audio-HAT.git 如果是最新的下载如下: git clone https://github.com/waveshare/WM8960-Audio-HAT 如上两条命令请不要都运行 </pre> 安装WM8960驱动:<br /> <pre> cd WM8960-Audio-HAT #需要等待一定的时间 sudo ./install.sh sudo reboot </pre> 重启后运行如下命令看下驱动是否加载成功。<br /> <pre> sudo dkms status </pre> <pre> pi@raspberrypi:~ $ sudo dkms status wm8960-soundcard, 1.0, 4.19.58-v7l+, armv7l: installed </pre> <font color="#FF0000"> 这里提供的是一个完成教程,如果安装多次还是无法出现驱动可以使用我们做好的[https://pan.baidu.com/s/1xHWcfnpxLpuPVWjHyZfZwA 镜像(版本2019-07-10,密码l9jz)]使用。<br /> </font> ==检测声卡== *检查播放:aplay -l <pre> pi@raspberrypi:~ $ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: wm8960soundcard [wm8960-soundcard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 </pre> *检查录音:arecord -l <pre> pi@raspberrypi:~ $ arecord -l **** List of CAPTURE Hardware Devices **** card 0: wm8960soundcard [wm8960-soundcard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 </pre> ==录音播放测试== ===录播测试=== <pre> sudo arecord -f cd -Dhw:0 | aplay -Dhw:0 </pre> 程序运行后通过耳机或者喇叭会听到麦克风采集到的声音,注意喇叭不能开靠近麦克风否 则会导致共振产生啸叫。<br /> ===录音=== <pre> sudo arecord -D hw:0,0 -f S32_LE -r 16000 -c 2 test.wav </pre> test.wav是录制生成的文件名。<br /> ===播放=== <pre> sudo aplay -Dhw:0 test.wav </pre> 播放刚刚录制的音频<br /> ===调节音量=== 默认的音量是比较小的<br /> <pre> sudo alsamixer </pre> 如果 WM8960 声卡没有设置为默认声卡则需要按 F6 选择声卡设备。<br /> [[file:wm8960_audio_hat_alsamixer.png|900px]]<br /> 实际上右边还有很多可以调节的选项。<br /> ===mpg123播放器=== aplay只支持wav的音乐,实际上MP3格式的音乐会更加多,安装:<br /> <pre> sudo apt-get install mpg123 sudo mpg123 music.mp3 </pre> 需要注意,这里的music.mp3需要替换成你的mp3音乐。<br /> ===图形化smplayer=== 如果是命令行系统可以跳过,如果你的是桌面系统,安装: <pre> sudo apt-get install smplayer </pre> 在界面中右键选择wm8960-soundcard为默认<br /> [[file:wm8960_audio_hat_smplayer.png|900px]]<br /> 在菜单中打开smplayer软件,打开音频文件即可播放。(smplayer也可以播放视频)<br /> [[file:wm8960_audio_hat_smplayer2.png|900px]]<br /> [[file:wm8960_audio_hat_smplayer3.png|900px]]<br /> ==程序控制== 我们提供了一个简单的python控制例程。<br /> *安装对应的库 <pre> sudo apt-get install libasound2-dev sudo pip install pyalsaaudio </pre> *下载例程 <pre> wget http://wiki.diustou.com/w/upload/1/19/WM8960_Audio_HAT_Code.tar.gz tar zxvf WM8960_Audio_HAT_Code.tar.gz sudo chmod 777 -R WM8960_Audio_HAT_Code </pre> *播放 <pre> sudo python playwav.py music.wav </pre> *录音 <pre> sudo python recordwav.py out.wav </pre> </div> <div class="tabbertab" title="资料"> ===文档=== *[https://{{SERVERNAME}}/w/upload/f/fa/WM8960_Audio_HAT_Schematic.pdf 原理图]<br> ===程序=== *[https://{{SERVERNAME}}/w/upload/1/19/WM8960_Audio_HAT_Code.tar.gz 示例程序]<br> ===数据手册=== *[https://{{SERVERNAME}}/w/upload/1/18/WM8960_v4.2.pdf WM8960数据手册]<br> <br />转到:[[#软件]],[[#程序]],[[#文档]] ===3D图纸=== *[https://{{SERVERNAME}}/w/upload/b/b3/WM8960_Audio_HAT_drawing.zip WM8960 Audio HAT 3D 图纸] <!--{{Join_us}}--> </div> == FAQ == <div class="tabbertab" title="FAQ"><br /> {{FAQ|耳机座子是几段的| 耳机座子是4段国标(又称OMTP)耳机接口,如果是美标(又称CTIA)耳机可能会出现麦没有声音现象。 |||}} {{FAQ|板子的晶振是多大的| 24Mhz。 |||}} {{FAQ|喇叭的功率| 两个喇叭都是8欧姆5W的。 |||}} </div> <div class="tabbertab" title="售后"><br />{{Service08}}</div>
该页面使用的模板:
模板:Category
(
查看源代码
)
模板:FAQ
(
查看源代码
)
模板:Product
(
查看源代码
)
模板:Service00
(
查看源代码
)
模板:Service08
(
查看源代码
)
模板:Tag
(
查看源代码
)
模板:Tipbox
(
查看源代码
)
返回至
WM8960 Audio HAT
。
导航
导航
首页
最近更改
随机页面
MediaWiki帮助
首页
首页
树莓派
主机
配件包
外壳
键鼠
电源
扩展板
显示屏
墨水屏
摄像模块
通信模块
继电器
电机驱动板
游戏机
产品分类
树莓派
Arduino
micro:bit
STM32
Espressif
WiFi模块
蓝牙模块
无线模块
LoRa模块
4G模块
GSM
GPRS
以太网
导航模块
北斗卫星
GPS
LCD
墨水屏
OLED
摄像头
USB模块
串口模块
RS232
RS485
CAN
传感器
温度模块
湿度模块
气压模块
继电器
电机模块
指纹模块
电平转换
音频模块
编程器
Wiki工具
Wiki工具
特殊页面
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志