找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1527|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

STM32四通道高級定時器TIM1的PWM波源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:160651 發(fā)表于 2020-3-12 23:19 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
使用STM32F407的四通道高級定時器TIM1的PWM波,可以同時生成四路,占空比可調(diào)的PWM波。大家有興趣的看一看吧。

單片機源程序如下:

  1. #include "include.h"


  2. void TIM1INIT()
  3.         {
  4.                
  5.         }
  6.        
  7.        
  8. int main(void)
  9. {  
  10. //        u16 led0pwmval=0;   
  11. //        u8 dir=1;
  12.         Stm32_Clock_Init(336,8,2,7);//設(shè)置時鐘,168Mhz
  13.         delay_init(168);                        //延時初始化   
  14.   TIM1_PWM_Init(20000-1,168-1);                //168M/420=400khz的計數(shù)頻率,重裝載值8000,所以PWM頻率為 400k/8000=50hz.     
  15.         LED_Init();
  16. //          delay_ms(1000);         
  17. //                delay_ms(1000);         
  18. //          PWM_0_VAL=2200;
  19. //                PWM_1_VAL=2200;
  20. //                PWM_2_VAL=2200;
  21. //                PWM_3_VAL=2200;
  22. //          delay_ms(1000);         
  23. //                delay_ms(1000);         
  24.           PWM_0_VAL=1000;
  25.                 PWM_1_VAL=1000;
  26.                 PWM_2_VAL=1000;
  27.                 PWM_3_VAL=1000;
  28.                         LED2=!LED2;       
  29.                 delay_ms(1000);         
  30.                 delay_ms(1000);         
  31.                 delay_ms(1000);       
  32.                 LED2=!LED2;       
  33.                 PWM_0_VAL=1150;
  34.                 PWM_1_VAL=1150;
  35.                 PWM_2_VAL=1150;
  36.                 PWM_3_VAL=1150;
  37.                         LED2=!LED2;
  38. //                delay_ms(1000);         
  39. //                delay_ms(1000);         
  40. //                delay_ms(1000);       
  41. //                LED2=!LED2;       
  42. //                PWM_0_VAL=1250;
  43. //                PWM_1_VAL=1250;
  44. //                PWM_2_VAL=1250;
  45. //                PWM_3_VAL=1250;
  46. //                        LED2=!LED2;
  47. //                delay_ms(1000);         
  48. //                delay_ms(1000);         
  49. //                delay_ms(1000);       
  50. //                LED2=!LED2;       
  51. //                PWM_0_VAL=1350;
  52. //                PWM_1_VAL=1350;
  53. //                PWM_2_VAL=1350;
  54. //                PWM_3_VAL=1350;
  55. //                        LED2=!LED2;
  56. //                delay_ms(1000);         
  57. //                delay_ms(1000);         
  58. //                delay_ms(1000);       
  59. //                delay_ms(1000);         
  60.                 delay_ms(1000);         
  61.                 delay_ms(1000);       
  62.         while(1)
  63.         {
  64.                 delay_ms(1000);       
  65. //                PWM_0_VAL=1052;
  66. //                PWM_1_VAL=1053;
  67. //                PWM_2_VAL=1052;
  68. //                PWM_3_VAL=1052;
  69.                         LED2=!LED2;       
  70.                  PWM_0_VAL=1000;
  71.                 PWM_1_VAL=1000;
  72.                 PWM_2_VAL=1000;
  73.                 PWM_3_VAL=1000;
  74.        
  75.         }               
  76.                 //                led0pwmval=10;
  77. //                PWM_0_VAL+=led0pwmval;         
  78. //                PWM_1_VAL+=led0pwmval;
  79. //                PWM_2_VAL+=led0pwmval;
  80. //                PWM_3_VAL+=led0pwmval;
  81.        
  82.        
  83. }
復(fù)制代碼

所有資料51hei提供下載:
TIM1--四路四通道PWM.7z (96.76 KB, 下載次數(shù): 28)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表