芯片是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左右的频率。只是怎么回事啊!是单片机的问题吗?还是我程序哪里写错了。求帮忙看看... |