Tool/software: TI-RTOS
Hello,
Although TI does not currently provide any high level interface for playing audio, we were able to create a simple wave file player for the CC1352 using the provided (somewhat crude) driver.
Basically this logic reads the wave data chunk by chunk from the external flash, then it feeds the buffer to the I2S DMA buffers, and using an externally attached I2S amplifier chip, the thing plays well.
However, there’s a problem:
Whenever a code access the external flash (using the SPI-DMA driver for a write operation, the playback stops, we don’t get any error interrupt (in the I2S_DMA handler), it simply stops.
A logic view on the I2S DATA line at point shows some sort of repetitive pattern the translates to a noise that sounds like clicks.
This has become even stranger since in order to break the I2S, awe need to do SPI write operation prior or while playing and everything breaks down.
We get no assertion, no error, a chunk of code that re-initializes the I2S registers along with the DMA pointers does not fix this.
After we hit this condition, the only viable “fix” is to perform a hardware reset and block SPI -Write completely.
Is there any relation between the I2S to the SPI TX DAM ?
We could not figure which DMA channels are being used by the I2S peripheral.
Any Clue ?