STM32CubeMX開發之路—7輸出PWM

STM32CubeMX開發之路—7輸出PWM


運行環境

  • Windows10
  • STM32CubeMX___Version 5.0.0
  • Keil5(MDK5)___Version 5.15

簡介

本例程主要講解如何設置PWM這隻輸出4路PWM信號


STM32CubeMx基本配置

基礎配置過程請參考 STM32CubeMx(Keil5)開發之路—配置第一個項目


STM32CubeMx PWM配置

1——點擊TIM2進行設置
2——4個Channel都選擇 “PWM Generation CHx” 選項
3——預分頻值填72-1即71
4——自動重裝載值設置爲100-1也就是99
5——會看到相應的輸出管腳PA0——PA3就是PWM的輸出管腳

PWM=(+1)(+1)=7200000072100=10000(HZ) PWM波的頻率 = \frac{時鐘頻率}{(預分頻+1)*(自動重裝載值+1)}=\frac{72000000}{72*100}=10000(HZ) \\


=(+1)=7200000072=1000000(),1us 每秒計數的個數= \frac{時鐘頻率}{(預分頻+1)}=\frac{72000000}{72} = 1000000(個),也就說計一個數要1us


(+1)=100(),1001us=100us,10000(HZ) (自動重裝載值+1)=100(個),也就是說計完一組就要100*1us=100us,即10000(HZ)



代碼修改


1——選擇main.c文件
2——在USER CODE中添加如下代碼,打開PWM定時器
3——在USER CODE中接着添加如下代碼,設置佔空比
佔空比分別爲:PA1——20/100 ,PA2——25/100, PA3——33/100, PA4——50/100

  /* USER CODE BEGIN 2 */

  HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_1);
  HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_2);
  HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_3);
  HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_4);
  
  __HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_1, 20);
  __HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_2, 25);
  __HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_3, 33);
  __HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_4, 50);
  
 
  /* USER CODE END 2 */

燒錄代碼後用示波器測試PA0——PA3這四個管腳,正確的話會看到如下波形


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章