找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 12987|回復(fù): 11
收起左側(cè)

(成功)STM32 PWM輸出實(shí)驗(yàn) 占空比和頻率實(shí)時(shí)可調(diào)

  [復(fù)制鏈接]
ID:216899 發(fā)表于 2017-7-3 20:17 | 顯示全部樓層 |閱讀模式
輸出占空比和頻率實(shí)時(shí)可調(diào)的PWM波!
實(shí)驗(yàn)?zāi)康?
    學(xué)習(xí)定時(shí)器的PWM功能
   
硬件資源:
    1,DS0(連接在PB5)
    2,定時(shí)器3(TIM3),使用TIM3的通道2(CH2),開啟部分重映射,將TIM3_CH2輸出到PB5.
    從而實(shí)現(xiàn)PWM輸出控制DS0亮度.
   
實(shí)驗(yàn)現(xiàn)象:
    本實(shí)驗(yàn),DS0由暗到亮,再由亮到暗,再由暗到亮,依次循環(huán).
   
注意事項(xiàng):
    無.

        
單片機(jī)源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "usart.h"
  6. #include "timer.h"



  7. int main(void)
  8. {        
  9.      u16 pwmval=6429;   // 7143*90%=6428.7
  10.     u8 flag=1;   
  11.     delay_init();             //延時(shí)函數(shù)初始化      
  12.     //NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);      //設(shè)置NVIC中斷分組2:2位搶占優(yōu)先級(jí),2位響應(yīng)優(yōu)先級(jí)
  13.     //uart_init(115200);     //串口初始化為115200
  14.      //LED_Init();                 //LED端口初始化
  15.      TIM3_PWM_Init(7143,71);//預(yù)分頻72:72000000÷(71+1)=1000000 自動(dòng)重裝載值由140Hz頻率計(jì)算得到:1000000÷140=7142.86
  16.        while(1)
  17.     {
  18.         if(flag==0)
  19.         {
  20.             TIM_SetCompare2(TIM3,pwmval);   
  21.             delay_ms(500);    //90%的占空比延時(shí)0.5秒
  22.             flag=1;            
  23.         }
  24.         if(flag==1)
  25.         {
  26.             if(pwmval>714)    // 7143*10%=714.3
  27.             {
  28.                 pwmval=pwmval-27;   // 占空比變化范圍:7143*0.8=5714.4   
  29.                                                      // 變化時(shí)間段的時(shí)間分割1500ms÷7ms=214.285(段)
  30.                                                     // 每個(gè)計(jì)數(shù)周期對(duì)應(yīng)占空比變化基數(shù)
  31.                 TIM_SetCompare2(TIM3,pwmval);   
  32.                 delay_ms(7);    // 頻率140HZ等于周期0.007秒
  33.             }
  34.             if(pwmval<714)
  35.             {
  36.                 pwmval=6429;
  37.                 flag=0;        
  38.             }  
  39.         }            
  40.     }     
  41. }
復(fù)制代碼

所有資料51hei提供下載:
(成功) PWM輸出實(shí)驗(yàn) 2017.4.20.7z (185.82 KB, 下載次數(shù): 389)


回復(fù)

使用道具 舉報(bào)

ID:252823 發(fā)表于 2018-5-18 22:37 | 顯示全部樓層
學(xué)習(xí)中,感謝分享!
回復(fù)

使用道具 舉報(bào)

ID:598080 發(fā)表于 2019-10-23 13:38 | 顯示全部樓層
學(xué)習(xí),看看.感謝分享!
回復(fù)

使用道具 舉報(bào)

ID:629138 發(fā)表于 2019-10-23 22:36 | 顯示全部樓層
學(xué)習(xí)中,感謝分享
回復(fù)

使用道具 舉報(bào)

ID:629138 發(fā)表于 2019-10-23 22:36 | 顯示全部樓層
謝謝樓主分享
回復(fù)

使用道具 舉報(bào)

ID:387200 發(fā)表于 2019-11-5 15:52 | 顯示全部樓層
感謝樓主分享
回復(fù)

使用道具 舉報(bào)

ID:727275 發(fā)表于 2020-4-22 14:03 | 顯示全部樓層
學(xué)習(xí)PWM輸出實(shí)驗(yàn) 占空比和頻率實(shí)時(shí)可調(diào),看看.感謝分享!
回復(fù)

使用道具 舉報(bào)

ID:209739 發(fā)表于 2020-12-11 17:07 | 顯示全部樓層
頻率調(diào)節(jié)沒有吧!
回復(fù)

使用道具 舉報(bào)

ID:81138 發(fā)表于 2021-1-27 18:05 | 顯示全部樓層
STM32 PWM輸出實(shí)驗(yàn) 占空比和頻率實(shí)時(shí)可調(diào) 是不是電壓可調(diào)呢
回復(fù)

使用道具 舉報(bào)

ID:469589 發(fā)表于 2021-2-22 21:13 | 顯示全部樓層
感謝樓主分享,必定認(rèn)真學(xué)習(xí)!
回復(fù)

使用道具 舉報(bào)

ID:975284 發(fā)表于 2022-1-10 22:02 | 顯示全部樓層
什么東西,不能用
回復(fù)

使用道具 舉報(bào)

ID:958524 發(fā)表于 2022-1-15 22:08 | 顯示全部樓層
這個(gè)和正點(diǎn)原子代碼差不多啊
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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