12 I2S Controller (I2S)
The PDM transmitting module is used to convert PCM signals into PDM signals, as shown in Figure 12-9. HPF
is a high-speed channel filter, and LPF is a low-speed channel filter. The PDM signal is derived from the PCM
signal, after upsampling and filtering. Signal I2S_TX_PDM_HP_BYPASS of register I2S_PDM_CONF_REG can be
set to bypass the HPF at the PCM input. Filter module group0 carries out the upsampling. If the frequency of
the PDM signal is f
and the frequency of the PCM signal is f
pdm
by:
The upsampling factor of 64 is the result of the two upsampling stages.
Table
12-6
lists the configuration rates of the I2S_TX_PDM_FP bit and the I2S_TX_PDM_FS bit of register
I2S_PDM
_FREQ_CONF_REG, whose output PDM signal frequency remains 48×128 KHz at different PCM signal frequen-
cies.
(KHz)
f
pcm
48
44.1
32
24
16
8
The I2S_TX_PDM_SINC_OSR2 bit of I2S_PDM_CONF_REG is the upsampling rate of the Filter group0.
As is shown in Figure 12-10, the I2S_TX_PDM_EN bit and the I2S_PCM2PDM_CONV_EN bit of register I2S_PDM_
CONF_REG should be set to 1 to use the PDM sending module. The I2S_TX_PDM_SIGMADELTA_IN_SHIFT bit,
I2S_TX_PDM_SINC_IN_SHIFT bit, I2S_TX_PDM_LP_IN_SHIFT bit and I2S_TX_PDM_HP_IN_SHIFT bit of register
I2S_PDM_CONF_REG are used to adjust the size of the input signal of each filter module.
Espressif Systems
Figure 12-9. PDM Transmitting Module
f
= 64×f
pcm
pdm
Table 12-6. Upsampling Rate Configuration
I2S_TX_PDM_FP
960
960
960
960
960
960
I2S_T X_P DM _SIN C_OSR2 =
Submit Documentation Feedback
, the relation between f
pcm
I2S_T X_P DM _F P
×
I2S_T X_P DM _F S
I2S_TX_PDM_FS
480
441
320
240
160
80
I2S_T X_P DM _F P
I2S_T X_P DM _F S
322
and f
is given
pcm
pdm
(KHz)
f
pdm
48×128
ESP32 TRM (Version 5.2)
Need help?
Do you have a question about the ESP32 and is the answer not in the manual?