For chaging the sampling frequency to 16 KHz, in the cyuacdscr.c file, do the following change:
0x80, 0xBB, 0x00, /* Sampling frequency - 48000 Hz */
Change this as
0x80, 0x3E, 0x00, /* Sampling frequency - 16000 Hz */
You have just changed the frequency's hex value from 0xBB00 (48000) to 0x3E00 (16000). You need to make this same change in 3 places in the descriptor file. (In superspeed, high speed, full speed descriptor)
Apart from this you do not have to change anything in the firmware (like packet size or buffers). As the SPI to I2S convertor is out of our scope we do not recommend any particular product. You may use anything of the kind.
We recommend you to follow the same firmware flow as in the example firmware, as far as the DMA operation is concerned.
- Madhu Sudhan