Вот подробности:

Вот выдача:
Код
hardware_sai1_master_fullduplex_initialize: 2 SAI1 MCKDIV=14, ARMSAIMCLK=12288000, PLLI2S_FREQ_OUT=172032000
SAI1_Block_A->CR1: 007202E0
SAI1_Block_A->CR2: 00000000
SAI1_Block_A->FRCR: 00011F3F
SAI1_Block_A->SLOTR: 00030180
SAI1_Block_A->IMR: 00000000
SAI1_Block_A->SR: 00000008
SAI1_Block_B->CR1: 007206E3
SAI1_Block_B->CR2: 00000000
SAI1_Block_B->FRCR: 00011F3F
SAI1_Block_B->SLOTR: 00030180
SAI1_Block_B->IMR: 00000000
SAI1_Block_B->SR: 00000000
Вот код:
Код
static void pp(const SAI_Block_TypeDef * dev, const char * label)
{
debug_printf_P(PSTR("%s->%s:\t%08lX\n"), label, "CR1", dev->CR1);
debug_printf_P(PSTR("%s->%s:\t%08lX\n"), label, "CR2", dev->CR2);
debug_printf_P(PSTR("%s->%s:\t%08lX\n"), label, "FRCR", dev->FRCR);
debug_printf_P(PSTR("%s->%s:\t%08lX\n"), label, "SLOTR", dev->SLOTR);
debug_printf_P(PSTR("%s->%s:\t%08lX\n"), label, "IMR", dev->IMR);
debug_printf_P(PSTR("%s->%s:\t%08lX\n"), label, "SR", dev->SR);
}
В данном варианте тактируется от PLL, так что там ещё и I2SPLL задействовано в RCC (смотрите функцию hardware_sai_clock_selection, для WITHSAICLOCKFROMI2S
Сообщение отредактировал Genadi Zawidowski - Nov 8 2015, 00:32