ZHCU994A May   2019  – June 2021

 

  1.   ADCx120EVM-PDK、PCMD3140EVM-PDK 评估模块
  2.   商标
  3. 1引言
  4. 2硬件预览
    1. 2.1 AC-MB 设置
      1. 2.1.1 音频串行接口设置
        1. 2.1.1.1 USB
        2. 2.1.1.2 光学或辅助模拟音频输入
        3. 2.1.1.3 外部
      2. 2.1.2 AC-MB 电源
    2. 2.2 ADCx120EVM-PDK 硬件设置
      1. 2.2.1 线路输入
      2. 2.2.2 板载麦克风配置
      3. 2.2.3 外部麦克风配置
  5. 3软件概述
    1. 3.1 PurePath Console 3 安装
    2. 3.2 ADCx120EVM GUI 安装
      1. 3.2.1 软件设置
  6. 4GPIO1 设置
  7. 5主模式运行
  8. 6快速入门
    1. 6.1 为 I2S 输出配置音频串行总线
    2. 6.2 保存配置
  9. 7示意图和物料清单
    1. 7.1 ADCx120EVM-PDK 原理图和物料清单
      1. 7.1.1 ADCx120EVM-PDK 原理图
      2. 7.1.2 ADCx120EVM-PDK 物料清单
    2. 7.2 AC-MB 原理图和物料清单
      1. 7.2.1 AC-MB 原理图
      2. 7.2.2 AC-MB 物料清单
    3. 7.3 Matlab 音频捕获示例
  10. 8修订历史记录

Matlab 音频捕获示例

可以使用由 Matlab 控制的 AC-MB 驱动器,同时允许进行一些自动测试。下面的代码演示了如何使用 Matlab 从 AC-MB 捕获音频。此示例需要使用 Audio Toolbox™

         if ismac % macOS driver 
 deviceReader = audioDeviceReader( 'Device', 'TI USB Audio 2.0',… 
 'SampleRate', 48000, … 
 'NumChannels', 8 ,…
'BitDepth', '32-bit float',… 
'OutputDataType','double'); 
 elseif ispc % windows driver
 devoiceReader = audioDeviceReader( 'Driver','ASIO', 'Device', 'Texas Instruments USB Audio ...',…
 'SampleRate', 48000, … 
 'NumChannels', 8 ,… 
 'BitDepth', '32-bit float',… 
 'OutputDataType','double’);
end
setup(deviceReader);% Setup the device reader
% Play out a file through PC and capture in the EVM
info = audioinfo( infile_name );% Read audiophile infile_name
fileReader = dsp.AudioFileReader( infile_name );% Create fileReader object
fileInfo   = audioinfo(infile_name);% Copy info from infile_name
fileWriter = dsp.AudioFileWriter( outfile_name, 'SampleRate', deviceReader.SampleRate, 'DataType', 'int32’);% Create fileWriter object
audioOut = audioDeviceWriter('SampleRate', fileInfo.SampleRate);% Setup audio playback
setup( audioOut, zeros(deviceReader.SamplesPerFrame, fileInfo.NumChannels) );
while ~isDone(fileReader)% For each block played out, record the block from EVM
audioToPlay = fileReader();% Read a chunk of audio from infile_name
audioOut(audioToPlay);% Play a chance of audio
[audioRead, numOverrun] = deviceReader();% Grab a chunk of audio from EVM
fileWriter(audioRead);% Write the chunk of audio from EVM to a file
end
release(audioOut);% Close all objects
release(fileReader);
release(fileWriter);
release(deviceReader);