Hi everybody,
On the wifi audio example, on the mcasp_if.c file, we will see the next functions:
void McASPInit()
{
MAP_PRCMPeripheralClkEnable(PRCM_I2S,PRCM_RUN_MODE_CLK);
MAP_PRCMI2SClockFreqSet(512000);
//512000 = 16*2*16000Khz(Num of bytes * STEREO * 16000 sampling)
}
void AudioCaptureRendererConfigure()
{
MAP_I2SConfigSetExpClk(I2S_BASE,512000,512000,I2S_SLOT_SIZE_16|
I2S_PORT_DMA);
MAP_I2SSerializerConfig(I2S_BASE,I2S_DATA_LINE_1,I2S_SER_MODE_RX,
I2S_INACT_LOW_LEVEL);
MAP_I2SSerializerConfig(I2S_BASE,I2S_DATA_LINE_0,I2S_SER_MODE_TX,
I2S_INACT_LOW_LEVEL);
}
But the CC3200 datasheet, say in the 334 line:
(c) Set fractional clock divider to generate module input clock of BitRate * 10:
PRCMI2SClockFreqSet(14112000) //For a 1411200 Hz bit clock.
And in line 335:
(d) Configure the internal divider of the module to generate the required bit clock frequency:
I2SConfigSetExpClk(I2S_BASE, 14112000, 1411200, I2S_SLOT_SIZE_16|I2S_PORT_CPU). //For a 1411200 Hz bit clock.
Although the bit rate is different in the wifi audio example than datasheet, in this two functions, the datasheet says that we must multiply bitrate per 10 in some function parameters, but the example don't make it. Why?
Thanks.