标题: STM32 PWM输入模式捕捉4路PWM的周期和占空比源程序 [打印本页]

作者: li00000    时间: 2017-6-10 16:16
标题: STM32 PWM输入模式捕捉4路PWM的周期和占空比源程序
PWM输入模式捕捉4路PWM的周期和占空比
需要的朋友可以看看


stm32单片机源程序如下:
  1. #include "delay.h"
  2. #include "sys.h"
  3. #include "usart.h"
  4. #include "exti.h"
  5. #include "wdg.h"
  6. #include "pwm.h"


  7. extern void TIM3_PWM_Init(u16 arr,u16 psc);
  8. extern void TIM4_PWMINPUT_INIT(u16 arr,u16 psc);

  9. extern u16 period;
  10. extern u16 duty ;
  11. extern u8 CollectFlag ;
  12. //Mini STM32开发板范例代码8
  13.          
  14. int main(void)
  15. {
  16.        
  17.         SystemInit();
  18.         delay_init(72);                             //延时初始化
  19.         NVIC_Configuration();          //中断配置
  20.         uart_init(9600);                                //串口初始化
  21.         TIM3_PWM_Init(1000-1,72-1);   //1KHZ周期
  22.         TIM_SetCompare1(TIM3,200);                //设置占空比
  23.         TIM_SetCompare2(TIM3,400);                //设置占空比
  24.         TIM_SetCompare3(TIM3,600);                //设置占空比
  25.         TIM_SetCompare4(TIM3,800);                //设置占空比
  26.         TIM4_PWMINPUT_INIT(0xffff,72-1);   //pwm输入初始化以1M的频率捕捉

  27. //        PWM_Init(900,0);         //不分频。PWM频率=72000/900=8Khz
  28.                 while(1)
  29.         {
  30.                         delay_ms(100);
  31.                   if(!CollectFlag)
  32.                         {
  33.                                 printf("duty          = %d%% \r\n",duty*100/period);                                //打印占空比
  34.                                 printf("cycle         = %dKHz\r\n",1000/period);//打印周期另一种叫法
  35. ……………………

  36. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:
PWM输入模式捕捉4路PWM的周期和占空比.rar (299.85 KB, 下载次数: 99)



作者: 何晨阳    时间: 2017-7-22 09:31
   多谢楼主   




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