标题: STM32 PWM播放WAV音质不好原因小析 [打印本页]

作者: 新洲罗远    时间: 2020-5-13 09:11
标题: STM32 PWM播放WAV音质不好原因小析
用呼吸灯例程改的WAV音频文件播放,音量大的时候有破音,原因何在?
8000HZ采样率8位音频。
我设置定时器用(计数器自动重装值=125,分频=72),也就是72000000/72/125=8000。
查资料,原来PWM没有自己单独的时钟,而是共用定时器时钟,也就是72000000/72=1000000
这样在每一秒钟8000次的中断中,每一次中断只能得到125个时钟,就是说脉宽只用125个等级,
我们8位音频有250个等级,这就造成了消顶失真。
解决办法是,减少分频,保证定时器计数器自动重装值为256*8000,即是每次计时中断有256个计数。





作者: 新洲罗远    时间: 2020-5-13 20:29
        TIM3_CH2_PWM_Init(250,36-1); //72000000/250/36=8000 试了一下,效果很好。
作者: 新洲罗远    时间: 2020-5-13 20:50
        TIM3_CH2_PWM_Init(250,36-1); //72000000/250/36=8000 试了一下,效果很好。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1