请教一下,原子f407录音机例程中的I2S时钟初始化调用的函数为2个参数的
void RCC_PLLI2SConfig(uint32_t PLLI2SN, uint32_t PLLI2SR)
{
/* Check the parameters */
assert_param(IS_RCC_PLLI2SN_VALUE(PLLI2SN));
assert_param(IS_RCC_PLLI2SR_VALUE(PLLI2SR));
RCC-> LLI2SCFGR = (PLLI2SN << 6) | (PLLI2SR << 28);
}
而我的F411CEU默认的函数为
void RCC_PLLI2SConfig(uint32_t PLLI2SN, uint32_t PLLI2SR, uint32_t PLLI2SM)
{
/* Check the parameters */
assert_param(IS_RCC_PLLI2SN_VALUE(PLLI2SN));
assert_param(IS_RCC_PLLI2SM_VALUE(PLLI2SM));
assert_param(IS_RCC_PLLI2SR_VALUE(PLLI2SR));
RCC-> LLI2SCFGR = (PLLI2SN << 6) | (PLLI2SR << 28) | PLLI2SM;
}
直接移植后报错,少了第三个参数
const u16 I2S_PSC_TBL[][5]=
{
{800 ,256,5,12,1}, //8Khz2éÑùÂê
{1102,429,4,19,0}, //11.025Khz2éÑùÂê
{1600,213,2,13,0}, //16Khz2éÑùÂê
{2205,429,4, 9,1}, //22.05Khz2éÑùÂê
{3200,213,2, 6,1}, //32Khz2éÑùÂê
{4410,271,2, 6,0}, //44.1Khz2éÑùÂê
{4800,258,3, 3,1}, //48Khz2éÑùÂê
{8820,316,2, 3,1}, //88.2Khz2éÑùÂê
{9600,344,2, 3,1}, //96Khz2éÑùÂê
{17640,361,2,2,0}, //176.4Khz2éÑùÂê
{19200,393,2,2,0}, //192Khz2éÑùÂê
};
RCC_PLLI2SConfig((u32)I2S_PSC_TBL[1],(u32)I2S_PSC_TBL[2]);//éèÖÃI2SxCLKμÄÆμÂê(x=2) éèÖà LLI2SN PLLI2SR
I2S时钟参数
麻烦大家看一下 是否还能用原子程序中的默认参数 第三个设置什么?
|