Dear team:
the nRF52832 can't divide the frequency to 48K, so I consider nRF52832 as the slave mode, codec as the master mode, and provide a 48K clock. In this way, does the nrf52832 work normally?
Dear team:
the nRF52832 can't divide the frequency to 48K, so I consider nRF52832 as the slave mode, codec as the master mode, and provide a 48K clock. In this way, does the nrf52832 work normally?
You are right, it is not possible for the NRF_I2S master to generate exactly 48 kHz (~47.619 kHz). If your codec can work as a I2S master device, and provide MCLK/LRCK to the nRF (in I2S slave mode), then it is possible to get 48kHz.
Best regards,
Kenneth
You are right, it is not possible for the NRF_I2S master to generate exactly 48 kHz (~47.619 kHz). If your codec can work as a I2S master device, and provide MCLK/LRCK to the nRF (in I2S slave mode), then it is possible to get 48kHz.
Best regards,
Kenneth
Hi Kenneth:
May I have a question:
I would like to ask how the radio is set to a 2M rate, and then the transmitted data can't keep up with the I2S transmission rate. According to the I2S clock of 48K, the 16bit bit depth, the radio transmission rate can reach 768K. The ESB demo is used. How to improve the Radio transmission rate?
You can increase the datarate for instance by disable ack on each packet, and have longer packets. However you will need to also compress the audio, it is not enough bandwidth to transmit uncompressed 16bit@48kHz not stable with some packet loss due to interference.
Best regards,
Kenneth
Hi,
Now,ACK has been disabled, but the data rate cannot be increased. I am Using PCM data to send sine wave is just to test the synchronization of radio data rate and I2S rate. The compression algorithm is added in the next step
Hmm.. have you tried to increase NRF_ESB_MAX_PAYLOAD_LENGTH to for instance max 252bytes? Then you should be able to get higher throughput at least.
Kenneth
Hi,Kenneth
52832's PDM function. After initialization, call the nrf_pdm_enable function, and then call the nrfx_pdm_start function. NRFX_PDM_ENABLED is set to 1. But the clock pin always has no result output. What could be the problem? I tried it in the order of this manual. At least there should be a clock. I checked that the module is ENABLE.