Greetings,
I have an audio task where I am transmitting one sample of audio (filling a buffer), at a time. I want to do this for both left and right channels of each MCASP, so I call the following once for each
while (! ( MCASP0_SRCTL9 & 0x10 ) ); //While XRDY=0 MCASP0_XBUF9_32BIT = (channel_mask[1]*sinetable[sample] << 15);
I do this for many channels, When I get to the right channel of the MCASP, where the above expressions are repeated, XRDY remains 0, even though I just filled the buffer a moment before.
This code works well and transmits the audio properly outside of the task, but the moment I enclose it in a task, it hangs when transmitting the second sample.
I'm working now to instead use an SIO, but any lower level examples, or advice to maintain this syntax would be appreciated.
Cheers,
Amanda