STM8S003F TIM2 输出PWM 怎么才能 精度高 而且PWM频率也高

2019-07-19 20:57发布

下边例程测试过是PD4口输出PWM波形   我想做100KHZ的PWM   然后在频率不改变的基础上,占空比从0-100可调      可是在调试时发现  ARR调大了以后  输出PWM频率会低到几KHZ 甚至几十HZ

请问各位大侠 我怎么设置 才能做成100Khz  占空比可调呢




void TIM2_INIT()
   {
      CLK_PCKENR1 |= 0x20;   //TIM2外设时钟使能  STM8外设时钟默认全部使能的,如果没有禁止外设时钟,此段可省略

      TIM2_CR1 = 0x00;       //禁止计数器,计数器一般先禁止,配置参数完成后再使能

      TIM2_CCMR1 = 0x70;    //输出模式PWM2  
                             //CC1配置为输出模式
                             //PWM2模式

      TIM2_CCER1 = 0x03;    //OC1低电平有效  OC1信号输出到对应的引脚

      TIM2_ARRH = 0x00;      //

      TIM2_ARRL = 0xff;      //

      TIM2_CCR1H =0x0f;

      TIM2_CCR1L =0xff;

      TIM2_PSCR =0x00;      //分频系数为0

      TIM2_IER =0x02;      //禁止更新中断,通道1中断允许,产生中断后需进入中断清楚标志位,否则程序会死在中断内

      TIM2_CR1 =0x01;      //使能计数器




   }

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。