ST STM32L0x3 Reference Manual page 907

Ultra-low-power advanced arm-based 32-bit mcus
Table of Contents

Advertisement

RM0367
Table 158. Audio-frequency precision using standard 8 MHz HSE (continued)
I2SxCLK
(MHz)
32
32
32
2
31.6.5
I
S master mode
2
The I
S can be configured in master mode. This means that the serial clock is generated on
the CK pin as well as the Word Select signal WS. Master clock (MCK) may be output or not,
controlled by the MCKOE bit in the SPIx_I2SPR register.
Procedure
1.
Select the I2SDIV[7:0] bits in the SPIx_I2SPR register to define the serial clock baud
rate to reach the proper audio sample frequency. The ODD bit in the SPIx_I2SPR
register also has to be defined.
2.
Select the CKPOL bit to define the steady level for the communication clock. Set the
MCKOE bit in the SPIx_I2SPR register if the master clock MCK needs to be provided
to the external DAC/ADC audio component (the I2SDIV and ODD values should be
computed depending on the state of the MCK output, for more details refer to
Section 31.6.4: Clock
3.
Set the I2SMOD bit in the SPIx_I2SCFGR register to activate the I
choose the I
through the DATLEN[1:0] bits and the number of bits per channel by configuring the
CHLEN bit. Select also the I
through the I2SCFG[1:0] bits in the SPIx_I2SCFGR register.
4.
If needed, select all the potential interrupt sources and the DMA capabilities by writing
the SPIx_CR2 register.
5.
The I2SE bit in SPIx_I2SCFGR register must be set.
WS and CK are configured in output mode. MCK is also an output, if the MCKOE bit in
SPIx_I2SPR is set.
Transmission sequence
The transmission sequence begins when a half-word is written into the Tx buffer.
Lets assume the first data written into the Tx buffer corresponds to the left channel data.
When data are transferred from the Tx buffer to the shift register, TXE is set and data
corresponding to the right channel have to be written into the Tx buffer. The CHSIDE flag
indicates which channel is to be transmitted. It has a meaning when the TXE flag is set
because the CHSIDE flag is updated when TXE goes high.
A full frame has to be considered as a left channel data transmission followed by a right
channel data transmission. It is not possible to have a partial frame where only the left
channel is sent.
The data half-word is parallel loaded into the 16-bit shift register during the first bit
transmission, and then shifted out, serially, to the MOSI/SD pin, MSB first. The TXE flag is
Data
I2SDIV I2SODD
length
32
5
1
16
8
0
32
8
0
generator).
2
S standard through the I2SSTD[1:0] and PCMSYNC bits, the data length
2
S master mode and direction (Transmitter or Receiver)
RM0367 Rev 7
Serial peripheral interface/ inter-IC sound (SPI/I2S)
MCLK
Target fs(Hz) Real f
Yes
11025
Yes
8000
Yes
8000
(kHz)
Error
s
11.363
3.0715%
7.812
2.3428%
7.812
2.3428%
2
S functions and
907/1043
922

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the STM32L0x3 and is the answer not in the manual?

Subscribe to Our Youtube Channel

Table of Contents