Question
SAI block settings
Posted on May 22, 2015 at 11:33
Hi,
help me please
to set up
the SAI
correctly.
I need a
mode
I2S standart, 32-bit frame, 24-bit data. Iconfigured
my code: hsai_BlockA1.Instance = SAI1_Block_A; hsai_BlockA1.Init.Protocol = SAI_FREE_PROTOCOL; hsai_BlockA1.Init.AudioMode = SAI_MODEMASTER_TX; hsai_BlockA1.Init.DataSize = SAI_DATASIZE_24; hsai_BlockA1.Init.FirstBit = SAI_FIRSTBIT_MSB; hsai_BlockA1.Init.ClockStrobing = SAI_CLOCKSTROBING_RISINGEDGE; hsai_BlockA1.Init.Synchro = SAI_ASYNCHRONOUS; hsai_BlockA1.Init.OutputDrive = SAI_OUTPUTDRIVE_ENABLED; hsai_BlockA1.Init.NoDivider = SAI_MASTERDIVIDER_ENABLED; hsai_BlockA1.Init.FIFOThreshold = SAI_FIFOTHRESHOLD_EMPTY; hsai_BlockA1.Init.ClockSource = SAI_CLKSOURCE_PLLI2S; hsai_BlockA1.Init.AudioFrequency = SAI_AUDIO_FREQUENCY_48K; hsai_BlockA1.FrameInit.FrameLength = 64; hsai_BlockA1.FrameInit.ActiveFrameLength = 32; hsai_BlockA1.FrameInit.FSDefinition = SAI_FS_CHANNEL_IDENTIFICATION; hsai_BlockA1.FrameInit.FSPolarity = SAI_FS_ACTIVE_LOW; hsai_BlockA1.FrameInit.FSOffset = SAI_FS_BEFOREFIRSTBIT;//SAI_FS_FIRSTBIT hsai_BlockA1.SlotInit.FirstBitOffset = 0; hsai_BlockA1.SlotInit.SlotSize = SAI_SLOTSIZE_32B; hsai_BlockA1.SlotInit.SlotNumber = 2; hsai_BlockA1.SlotInit.SlotActive = 0xFFFF0000; HAL_SAI_Init(&hsai_BlockA1);However, these
are not perceived
correctly.
