• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

录音与播放(WM8731芯片)例程设计Verilog代码Quartus AX301开发板

10/07 08:18
1072
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-24111219253V55.docx

共1个文件

名称:录音与播放(WM8731芯片)例程设计Verilog代码Quartus  AX301开发板

软件:Quartus

语言:Verilog

代码功能:

本实验的录音和播放实验因为 AX301/AX4010 FPGA 开发板上没有音频部分的电路,需要外接一个黑金的 AUDIO 音频模块 AN831。音频模块和 AX301/AX4010 的开发板上的 40 针扩展口(J2)相连实现音频数据通信。没有音频模块的用户可以到 ALINX 官方淘宝店购买, 音频模块和开发板连接。

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

本代码已在AX301开发板验证,AX301开发板如下,其他开发板可以修改管脚适配:

AX301开发板.png

设计文档:

录音与播放例程

1 实验简介

本实验的录音和播放实验因为 AX301/AX4010 FPGA 开发板上没有音频部分的电路,需要外接一个黑金的 AUDIO 音频模块 AN831。音频模块和 AX301/AX4010 的开发板上的 40 针扩展口(J2)相连实现音频数据通信。没有音频模块的用户可以到 ALINX 官方淘宝店购买, 音频模块和开发板连接后如下图所示:

音频模块上有三个音频连接器,其中粉色的接口为麦克风输入;绿色的接口为耳机输出;蓝色的 接口为音频输入, 用于连接 DVD 等音频输出口。本实验将实现音频模块和 FPGA 之间的数据通信, 通过音频模块把麦克风输入的语音数据存储到 SDRAM 存储器里, 再把音频数据发送给音频模块,从 耳机接口进行语音的播放,从而实现录音和播放的功能。

2 实验原理

2.1 硬件介绍

AX301/AX4010 开发板通过 40PIN 的扩展口(J2)和 AN831 音频模块连接,AN831 音频模块使用WOLFSON 公司的 WM8731 芯片实现声音信号的 A/D 和 D/A 转换功能。以下为 AN831 音频模块的硬件电路:

2.2 WM8731 配置和时序

这里简单介绍一下音频模块 AN831 用到的音频编/解码芯片 WM8731。该芯片在本设计中主要 完成声音信号在采集和回放过程中的 A/D 和 D/A 转换功能。该芯片的 ADC 和 DAC 的采样频率为 8KHz 到 96KHz 可调,可转换的数据长度为 16-32 位可调。WM8731 的内部有 11 个寄存器。该芯片 的刜始化以及工作时的工作状态和功能都是通过以 I2C 总线方式对其内部的这 11 个寄存器进行相应的配置来实现的。

本设计中 WM8731 工作于主模式,采样频率设为 48KHZ,转换的数据位长度为 16 位。WM8731 的数字音频接口有 5 根引脚,分别为:BCLK(数字音频位时钟)、DACDAT(DAC 数字音频 数据输入)、DACLRC(DAC 采样左/右声道信号)、ADCDAT(ADC 数字音频信号输出)、ADCLRC(ADC 采样 左/右声道信号)。

在本设计中 FPGA 为从设备,WM8731 为主设备。ADCDAT、DACDAT、ADCLRC 和 DACLRC 不位时钟 BCLK 同步,在每个 BCLK 的下降沿进行一次数据传输。BCLK、DACDAT、ACLRC、 ADCLRC 为 WM8731 的输入信号。ADCDAT 为 WM8731 的输出信号

在本系统中 FPAG 和 WM8731 的控制和数据通信将用到 I2C 和数字音频总线接口。FPGA 通过 I2C 接口配置 WM8731 的寄存器,通过 I2S 总线接口来进行音频数据的通信。关于 I2C 接口,其他 实验中已经有讲解,下面我们主要来了解数字音频接口。

数字音频接口可提供 4 种模式:

● Right justified

● Left justified

● I2S

● DSP mode

Left justified 模式

I2S 模式

Right justified 模式

DSP/PCM 模式(MODE A)

DSP/PCM 模式(MODE B)

本实验选择 Right justified 模式。

部分代码展示:

//////////////////////////////////////////////////////////////////////////////////
//                                       //
//                                        //
//  Author: meisq                               //
//          msq@qq.com                        //
//          ALINX(shanghai) Technology Co.,Ltd            //
//          heijin                          //
//     WEB: http://www.alinx.cn/                      //
//     BBS: http://www.heijin.org/                     //
//                                       //
//////////////////////////////////////////////////////////////////////////////////
//                                                                              //
// Copyright (c) 2017,ALINX(shanghai) Technology Co.,Ltd                        //
//                    All rights reserved                                       //
//                                                                              //
// This source file may be used and distributed without restriction provided    //
// that this copyright statement is not removed from the file and that any      //
// derivative work contains the original copyright notice and the associated    //
// disclaimer.                                                                  //
//                                                                              //
//////////////////////////////////////////////////////////////////////////////////

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1351

  • 2-24111219253V55.docx
    下载

相关推荐