SBAU479 December   2024 TAA3020

 

  1.   1
  2. 1Features
  3. 2Description
  4.   Trademarks
  5. 3Evaluation Module Overview
    1. 3.1 Introduction
    2. 3.2 Kit Contents
    3. 3.3 Specifications
    4. 3.4 Device Information
  6. 4Hardware Overview
    1. 4.1 AC-MB Settings
      1. 4.1.1 Audio Serial Interface Settings
        1. 4.1.1.1 USB
        2. 4.1.1.2 Optical or Auxilary Analog Audio Input
        3. 4.1.1.3 External
      2. 4.1.2 AC-MB Power Supply
    2. 4.2 TAA3020EVM-PDK Hardware Settings
      1. 4.2.1 Line Inputs
      2. 4.2.2 Onboard Microphone Configuration
      3. 4.2.3 External Microphone Configurations
  7. 5Software Overview
    1. 5.1 PurePath Console 3 Installation
    2. 5.2 TAA3020EVM GUI Installation
      1. 5.2.1 Software Setup
  8. 6GPIO1 Settings
  9. 7Master Mode Operation
  10. 8Quick Start
    1. 8.1 Configuring the Audio Serial Bus for the I2S Output
    2. 8.2 Saving a Configuration
  11. 9Schematic and Bill of Materials
    1. 9.1 TAA3020EVM-PDK Schematic and Bill of Materials
      1. 9.1.1 TAA3020EVM-PDK Schematic
      2. 9.1.2 TAA3020EVM-PDK Bill of Materials
    2. 9.2 AC-MB Schematic and Bill of Materials
      1. 9.2.1 AC-MB Schematic
      2. 9.2.2 AC-MB Bill of Materials
    3. 9.3 Matlab Audio Capture Example

Matlab Audio Capture Example

The driver for the AC-MB may be controlled with Matlab, allowing for some automated testing. The following code demonstrates capturing audio from the AC-MB with Matlab. This example requires the 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);