This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Starterware Audio Application

Other Parts Discussed in Thread: TMS320C6748

Hello,

I am a newbie with  DSPs and TI's TMS320C6748. Can some please point out where to access the raw audio bytes in the sample starterware audio application? I'd like to perform some operations on them. While debugging, I tried modifying the sample code to transmit chosen byte values which I hoped I'd be able to recover at another similar board, but the byte values were completely different in the received buffers (rxBufx). I also noticed the txBufPtr[lastSentTxBuf] was different from the rxBufPtr[lastFullRxBuf] after the following memcpy line was executed. Is there a reason why this is the case?

memcpy((void *)txBufPtr[lastSentTxBuf], (void *)rxBufPtr[lastFullRxBuf], AUDIO_BUF_SIZE);

Thanks for your anticipated help!

  • Hi Temitope,

    Thanks for your post.

    Basically, the code is written this way since it is a sample McASP audio loopback example and obviously, it expects txBufPtr[] to be same as rxBufPtr[]. So, in the code, it has a check "if (lastFullRxBuf != lastSentTxBuf)" running in while(1) loop and if lastSentTxBuf is not equal to lastFullRxBuf, it needs to be mapped to proper paRAM set and the code will take care of this. But in your case, even after memcpy(), txBufPtr and rxBufPtr are diiferent and this might be due to the transmit chosen byte values got corrupted and thereby, EDMA paRAM set would have not mapped properly.

    Please validate your sample code which you modified for transmit byte values and look into EDMA paRAM set register values while debugging the code at appropriate breakpoints.

    Thanks & regards,

    Sivaraj K

    -------------------------------------------------------------------------------------------------------
    Please click the Verify Answer button on this post if it answers your question.
    -------------------------------------------------------------------------------------------------------

  • Hi Sivaraj,

    Thank you very much for your response. I checked the EDMA paRAM set register values and I never modified anything in it. The only thing I changed was within the while loop where you have a memcpy from rxBufPtr to txBufPtr. I just made sure a known fixed set of values were copied into the txBufPtr every time, within the if clause.

    I also have a couple of other questions - Do you also know of any APIs to access the raw data samples from the ADC and DAC (before they are passed to the codec)? Does the mic jack have a dedicated channel or is it connected to the line-in input pin as well? Thanks a lot for your help!