[STM32] 定时器分频没起作用,是怎么回事啊?

[复制链接]
1512|3
 楼主| majay123 发表于 2014-4-10 09:50 | 显示全部楼层 |阅读模式

芯片是stm8s105 我的程序是这样的
void PWM1_Init(u16 Freq)
{
        TIM1_DeInit();
        TIM1_TimeBaseInit(16, TIM1_COUNTERMODE_UP, Freq, 0);
        //TIM1_ARRPreloadConfig(ENABLE);
        TIM1_Cmd(ENABLE);//启动定时器1
        TIM1_ITConfig(TIM1_IT_UPDATE, ENABLE);

}

#ifdef _COSMIC_
@far @interrupt void TIM1_UPD_OVF_TRG_BRK_IRQHandler(void)
#else /* _RAISONANCE_ */
void TIM1_UPD_OVF_TRG_BRK_IRQHandler(void) interrupt 11
#endif /* _COSMIC_ */
{
        GPIO_WriteReverse(GPIOC, GPIO_PIN_1);
        CountA1++;
}
Freq=1000;
但是输出的总是112KHZ,不论改什么值多不会变,但是我在stm8s207上同样的程序,输出是490HZ左右的频率。只是怎么回事啊!是单片机的问题吗?还是我程序哪里写错了。求帮忙看看...
ayb_ice 发表于 2014-4-10 11:07 | 显示全部楼层
这种东西看手册对程序就搞定了
coody 发表于 2014-4-10 11:12 | 显示全部楼层
MCU有BUG,报告ST公司叫他们改好后发回
 楼主| majay123 发表于 2014-4-10 12:40 | 显示全部楼层
问题找到了,        TIM1_ClearITPendingBit(TIM1_IT_UPDATE);少了这个,忘记跟新中断了,怪自己2了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

13

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部