中级会员
 
- 积分
- 345
- 金钱
- 345
- 注册时间
- 2016-7-3
- 在线时间
- 87 小时
|
10金钱
原子哥的STM32H7例程WAV音频播放,设置采样率后主频变慢,刷图片很慢很慢,不设置音频采样率,刷图片就正常。下面是设置采样率函数
u8 SAIA_SampleRate_Set(u32 samplerate)
{
u8 i=0;
RCC_PeriphCLKInitTypeDef RCCSAI1_Sture;
for(i=0;i<(sizeof(SAI_PSC_TBL)/10);i++)//看看改采样率是否可以支持
{
if((samplerate/10)==SAI_PSC_TBL[i][0])break;
}
if(i==(sizeof(SAI_PSC_TBL)/10))return 1;//搜遍了也找不到
RCCSAI1_Sture.PeriphClockSelection=RCC_PERIPHCLK_SAI1;
RCCSAI1_Sture.Sai1ClockSelection=RCC_SAI1CLKSOURCE_PLL2;
RCCSAI1_Sture.PLL2.PLL2M=25;
RCCSAI1_Sture.PLL2.PLL2N=(u32)SAI_PSC_TBL[i][1];
RCCSAI1_Sture.PLL2.PLL2P=(u32)SAI_PSC_TBL[i][2];
HAL_RCCEx_PeriphCLKConfig(&RCCSAI1_Sture); // 、、初始化它会系统会变慢
__HAL_SAI_DISABLE(&SAI1A_Handler); //关闭SAI
SAI1A_Handler.Init.AudioFrequency=samplerate; //设置播放频率
HAL_SAI_Init(&SAI1A_Handler); //初始化SAI
SAIA_DMA_Enable(); //开启SAI的DMA功能
__HAL_SAI_ENABLE(&SAI1A_Handler); //开启SAI
return 0;
}
,只要调用它,主频就变慢了,刷图片比平时慢了好几倍。
|
最佳答案
查看完整内容[请看2#楼]
已经解决了,是主时钟设置问题,可能主时钟和SAI都用了PLL2 ,导致了这个问题,直接修改下系统时钟就可以了。希望可以帮助到其他人
|