基于stm32庫函數版PWM輸出實驗
實驗目的:
學習定時器的PWM功能
硬件資源:
1,DS0(連接在PA8)
2,定時器1(TIM1),使用TIM1的通道1(CH1),開啟部分重映射,將TIM1_CH1輸出到PA8.
從而實現PWM輸出控制DS0亮度.
實驗現象:
本實驗,DS0由暗到亮,再由亮到暗,再由暗到亮,依次循環.
單片機源程序如下:
- #include "led.h"
- #include "delay.h"
- #include "sys.h"
- #include "pwm.h"
- int main(void)
- {
- u16 led0pwmval=0;
- u8 dir=1;
- delay_init(); //延時函數初始化
- LED_Init(); //初始化與LED連接的硬件接口
- TIM1_PWM_Init(899,0);//不分頻。PWM頻率=72000/(899+1)=80Khz
- while(1)
- {
- delay_ms(10);
- if(dir)led0pwmval++;
- else led0pwmval--;
- if(led0pwmval>300)dir=0;
- if(led0pwmval==0)dir=1;
- TIM_SetCompare1(TIM1,led0pwmval);
- }
- }
復制代碼
所有資料51hei提供下載:
PWM輸出實驗.7z
(184.22 KB, 下載次數: 44)
2018-4-7 15:00 上傳
點擊文件名下載附件
程序源碼
|