標(biāo)題: STM32 PWM輸入模式捕捉4路PWM的周期和占空比源程序 [打印本頁]

作者: li00000    時間: 2017-6-10 16:16
標(biāo)題: STM32 PWM輸入模式捕捉4路PWM的周期和占空比源程序
PWM輸入模式捕捉4路PWM的周期和占空比
需要的朋友可以看看


stm32單片機(jī)源程序如下:
  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開發(fā)板范例代碼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);                //設(shè)置占空比
  23.         TIM_SetCompare2(TIM3,400);                //設(shè)置占空比
  24.         TIM_SetCompare3(TIM3,600);                //設(shè)置占空比
  25.         TIM_SetCompare4(TIM3,800);                //設(shè)置占空比
  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黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
PWM輸入模式捕捉4路PWM的周期和占空比.rar (299.85 KB, 下載次數(shù): 99)



作者: 何晨陽    時間: 2017-7-22 09:31
   多謝樓主   




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1