跳转到内容
主菜单
主菜单
移至侧栏
隐藏
产品线
首页
核心板 / 树莓派
人工智能
创客
物联网 / 智能家居
电子模块
开发板
工具
最近更改
随机页面
全部页面
最新图片
上传文件
LCWiki
搜索
搜索
外观
登录
个人工具
登录
查看“︁艾尔赛WM8960音频解码模块”︁的源代码
页面
讨论
大陆简体
阅读
查看源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
查看源代码
查看历史
常规
链入页面
相关更改
页面信息
外观
移至侧栏
隐藏
←
艾尔赛WM8960音频解码模块
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于这些用户组的用户执行:
管理员
、editor
您可以查看和复制此页面的源代码。
== 概述 == 艾尔赛WM8960模块搭载英国原装Wolfson音频解码芯片和双硅麦克风阵列。专为树莓派设计的音频声卡扩展板,低功耗,立体声编解码,支持高音质播放和录音,可直接驱动扬声器播放音乐。也可用于DIY类似于天猫精灵、Google Assistant等智能音箱。<br> == 功能特点 == * 基于Raspberry Pi 40pin接口,适用于Raspberry Pi系列主板;<br><br> * 支持Raspberry Pi Zero/Zero W/2B/3B/3B+/4等开发板 ;<br><br> * 采用WM8960低功耗立体声编解码芯片,可通过I2S接口通讯;<br><br> * 板载2个高质量MEMS硅麦克风,可左右声道录音;<br><br> * 板载标准3.5mm耳机接口,输出功率:40mW(16Ω@3.3V);<br><br> * 板载双通道喇叭接口,可直接驱动扬声器,输出功率:2X1W;<br><br> * 支持立体声、3D环绕等音效输出;<br><br> * 板载3个可编程APA-102-2020全彩LED;<br><br> * 供电电压:5V;<br><br> * 逻辑电压:3.3V;<br><br> * 树莓派控制接口:I2C;<br><br> * 音频接口:I2S;<br><br> * DAC信噪比:98db,ADC信噪比:94db;<br><br> * 提供完善的参考资料,搭配树莓派可DIY类似出于天猫精灵、小度音箱、Google Assistant功能的智能音箱;<br><br> == 介绍说明 == 板子尺寸:65*30.2mm,重量:16g<br> [[Image:LC-Voice-WM8960.png]] 接口说明 [[Image:LC-Voice-WM8960 1.png]] 1、Raspberry Pi 2*20P座子:支持Raspberry Pi Zero/Zero W/2B/3B/3B+/4等;<br> 2、MIC_L&MIC_R: 左右MEMS硅麦克风;<br> 3、WM8960:低功耗立体声编解码芯片;<br> 4、POWER:输出接扬声器时此Micro USB|需接上以提供足够电流;<br> 5、KF301-4P端子:左右声道扬声器输出,功率2X1W;<br> 6、PH2.0-4P座子:左右声道扬声器输出,功率2X1W;<br> 7、3.5MM耳机输出口:功率40mW(16Ω@3.3V);<br> 8、RGB LED: 3个APA102全彩LED,连接到树莓派的SPI接口;<br> 9、6X6mm按键:连接到树莓派的GPIO17;<br> == 硬件连接 == 1、系统配置与驱动安装<br> 1.1、准备工作 首先确保所用的Pi运行的Raspbian操作系统是更新于2018.06.27或者2018.06.27之后,然后将WM8960模块插入Pi,接好键盘、显示器等必要的外设,Pi连上WiFi/有线网络,如下图:<br> [[Image:LC-Voice-WM8960 2.png]] 1.2、换源 在安装驱动之前,请根据以下流程切换源到清华:<br> (1)输入:sudo nano /etc/apt/sources.list<br> [[Image:LC-Voice-WM8960 3.png]] (2)用#注释掉原文件内容,用以下内容替代<br> deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib [[Image:LC-Voice-WM8960 4.png]] 输入完成后按Ctrl+X键保存退出<br> 1.3、驱动下载并安装 输入:git clone https://github.com/respeaker/seeed-voicecard.git #下载驱动<br> 输入:cd seeed-voicecard #打开文件夹<br> 输入:sudo ./install.sh #安装声卡驱动<br> 输入:sudo reboot #重启Pi<br> [[Image:LC-Voice-WM8960 5.png.png]] [[Image:LC-Voice-WM8960 6.png.png]] [[Image:LC-Voice-WM8960 7.png]] 1.4,检查声卡名称是否与源代码seeed-voicecard相匹配<br> 输入:arecord -L<br> [[Image:LC-Voice-WM8960 8.png]] 2、安装Python和虚拟环境<br> 这样是为了隔离SDK与系统Python包关系<br> 输入:cd /home/pi<br> 输入:git clone https://github.com/respeaker/4mics_hat.git<br> 输入:cd /home/pi/4mics_hat<br> 输入:sudo apt install python-virtualenv #安装Python2虚拟环境<br> 输入:virtualenv --system-site-packages ~/env #建立虚拟环境,命名env<br> 输入:source ~/env/bin/activate #激活虚拟环境<br> 输入:pip install spidev gpiozero #安装需要的工具包<br> [[Image:LC-Voice-WM8960 9.png]] 3、控制APA102 LED的示例<br> 3.1、APA102 LED接口配置<br> 板载的APA102 LED通过Pi的SPI接口来控制,故需要先配置Pi的SPI接口。<br> 步骤如下:<br> ●输入:sudo raspi-config<br> ●选择“SPI”<br> ●选择“Yes”<br> ●选择“OK”<br> ●选择“Finish”<br> 3.2、运行APA102 LED<br> 输入:cd /home/pi<br> 输入:git clone https://github.com/respeaker/4mics_hat.git<br> 输入:cd /home/pi/4mics_hat<br> 输入:sudo apt install python-virtualenv #安装Python 虚拟环境<br> 输入:virtualenv --system-site-packages ~/env #创建Python 虚拟环境<br> 输入:source ~/env/bin/activate #激活Python 虚拟环境<br> 输入:pip install spidev gpiozero #安装spidev和gpiozero<br> [[Image:LC-Voice-WM8960 10.png]] 输入:python pixels.py #运行APA102 LED,LED会闪烁<br> [[Image:LC-Voice-WM8960 11.png]] 4、Alexa SDK和DuerOS SD<br> 由于国内登录不上Google Assistant,所以使用在国内能连接的Alexa和百度DuerOs作为语音引擎,开发出能让大多数人使用的语音互助系统。<br> 4.1、配置和DOA测试<br> (1)配置Voice engine<br> 输入:source ~/env/bin/activate #激活Python虚拟环境<br> 输入:cd ~/4mics_hat 输入:sudo apt install libatlas-base-dev #安装snowboy depend<br> 输入:sudo apt install python-pyaudio #安装pyaudio音频处理包<br> 输入:pip install ./snowboy*.whl #安装snowboy for KWS<br> 输入:pip install ./webrtc*.whl #安装webrtc for DOA<br> 输入:cd ~/<br> 输入:git clone https://github.com/voice-engine/voice-engine #write by seeed<br> 输入:cd voice-engine/<br> 输入:python setup.py install<br> 输入:cd examples<br> [[Image:LC-Voice-WM8960 12.png]] 4.2、运行<br> 在虚拟环境下运行python kws_doa.py。请用snowboy来唤醒,我们就可以看到方位信息。<br> [[Image:LC-Voice-WM8960 13.png]] 5、百度中文语音互动/Alexa英文语音互动 5.1、配置和安装相关依赖 输入:source ~/env/bin/activate #activate the virtual<br> 输入:cd ~/<br> 输入:git clone https://github.com/respeaker/avs<br> 输入:cd avs #install Requirements<br> 输入:python setup.py install <br> 输入:sudo apt install gstreamer1.0<br> 输入:sudo apt install gstreamer1.0-plugins-good<br> 输入:sudo apt install gstreamer1.0-plugins-ugly<br> 输入:sudo apt install python-gi gir1.2-gstreamer-1.0<br> 输入:pip install tornado<br> [[Image:LC-Voice-WM8960 14.png]] 5.2、取得授权<br> 在终端运行 alexa-auth,然后登陆获取alexa的授权,或者运行dueros-auth获取百度的授权。授权文件会自动保存在 /home/pi/.avs.jason。在中国地区通常获取百度的授权就够用,方法如下:<br> [[Image:LC-Voice-WM8960 15.png]] (2)选择baidu dueros,然后输入自己的百度账号即可完成授权<br> [[Image:LC-Voice-WM8960 16.png]] '''注意:如果想在alexa-auth 和dueros-auth 之间切换,请先删除 /home/pi/.avs.jason。这个是隐藏文件,请用ls-la显示文件''' 5.3、安装mpg123播放器<br> 树莓派有3个播放器(mpv, mpg123和gstreamer)可供使用,语音交互上mpg123有着不错的表现。<br> 输入:sudo apt install mpg123 #安装mpg123播放器<br> [[Image:LC-Voice-WM8960 17.png]] 6、百度中文语音互动测试<br> WM8960模块的3.5mm音频接口处插上耳机/喇叭端子接喇叭(如果所用的显示器有HDMI音频功能会优先从HDMI输出音频)。<br> 以上步骤均配置无误后,以后只要输入以下3条指令即可进入语音交互功能。<br> 输入:cd /4mics_hat #打开文件夹<br> 输入:source ~/env/bin/activate #激活虚拟环境<br> 输入:PLAYER=mpg123 python ns_kws_doa_alexa_with_light.py <br> [[Image:LC-Voice-WM8960 18.png]] [[Image:LC-Voice-WM8960 19.png]] 接着终端会打印出很多debug信息,当我们看到status code:204时对着WM8960模块上面的咪头说snowboy来唤醒语音交互功能,WM8960语音模块成功识别到 snowboy 这句语音后会打印出一大串调试信息(如果没有识别到snowboy不会有调试信息输出),此时立即说出你要执行的操作,比如:播放张学友的歌,智能语音模块会立即播放张学友的音乐。<br> '''(提示:snowboy这个单词用手机翻译软件读出来比用嘴读出来可能更易识别)''' 7、APA102 LED测试 以上步骤均配置无误后,以后只要输入以下3条指令即可测试LED功能。<br> 输入:cd ~/4mics_hat #打开文件夹<br> 输入:source ~/env/bin/activate #激活虚拟环境<br> 输入:python pixels.py #运行LED<br> [[Image:LC-Voice-WM8960 20.png]] 8、WM8960模块输出音量调节<br> 树莓派桌面的音量调节按钮默认用来调节自带声卡的音量,要调节WM8960模块的音量,需先将WM8960模块(即seeed-2mic-voicecard)设置为默认声卡。<br> 8.1、点击 首选项---Audio Device Settings<br> [[Image:LC-Voice-WM8960 21.png]] 8.2、声卡:seeed-2mic-voicecard(Alsa mixer),再分别点击Make Default和OK<br> [[Image:LC-Voice-WM8960 22.png]] 温馨提示:<br> 1, 在环境已经配置好了的情况下,下次开机只需要执行上面的第7和第8步就可以测试语音交互功能 和APA102 LED;<br> 2,因为配置过程中很多文件需要从国外的Github/Raspberry官网下载相关的文件,速度可能较慢,请耐心等待,若下载失败可多次尝试!
返回
艾尔赛WM8960音频解码模块
。
搜索
搜索
查看“︁艾尔赛WM8960音频解码模块”︁的源代码
添加话题