Using Teensy 3.6 to send I2S signals to test performance of DAC and XMOS

Status
Not open for further replies.

RyanGo

New member
Hi there,

Just as some background, I'm working on a project with an XMOS microcontroller to take in multiple (16) microphone inputs and output multiple (7) speaker outputs (basically making an audio interface).

We're unfamiliar with the XMOS so to help test it we decided to get a Teensy (3.6) to send known test signals to confirm the performance of our DACs and the XMOS's inputs. I've been looking around for ways to implement I2S on teensy, but thus far it seems like the only code available is for use with the Teensy's audio adapter board or other already implemented AudioControls.
The DAC we are using is the TLV320DAC23 (http://www.ti.com/lit/ds/symlink/tlv320dac23.pdf)
and the XMOS board is the XCORE 200 eXplorer board.



Is there a way for me to use the existing Audio library to just send out I2S signals (data, BCLK, LRCLK) to any device or would I need a new AudioControl header? I've seen a lot of people acknowledge the I2S capabilities of the 3.6, but I haven't found any code demonstrating use of it or really any board without the implied use of the audio adaptor board.

Thanks in advance! I'm pretty new to this stuff but I'm looking forward to working with the Teensy in future projects.
 
You don't have to use the Teensy Audio adapter to use the Audio library/Audio designer GUI. You can just drag-drop an I2S output "object" to the workspace in the audio designer, and go from there. The library is setup for 16-bit 44,100 hz sample rate, which may or may not suit your purposes. The Audio board page on PJRC website shows what pins from the Teensy comprise the LRCLK, BCLK DATA signals.
I have personally used the Adafruit I2S DAC amplifier board containing the MAX98357 i2S DAC/amplifier IC, and it works fine with Teensy/audio library. In such a case you must NOT add the SGTL5000 audio board control object, or any other controllers for that matter, as they are not needed and will hang the program if they are not present and included in the code.
 
Status
Not open for further replies.
Back
Top