#ifndef __PWM_H
#define __PWM_H
#include "sys.h"
void TIM2_PWM_Init(u16 arr1,u16 psc1); #endif
int main(void)
{
u16 pwmval=0; //定义led0pwm的初始值
u8 dir=1; //用于控制PWM值的变化范围
delay_init(); //初始化delay函数
TIM2_PWM_Init(899,0); //PWM初始化函数 第一个数arr:自动重装值,第二个数psc:时钟预分频数
//不分频,PWM频率:72000/(899+1)=80khz
while(1) //无限循环
{
delay_ms(10);
if(dir) pwmval++;
else pwmval--;
if(pwmval>700)dir=0;
if(pwmval==0)dir=1;
TIM_SetCompare1(TIM2,pwmval); //TIM_CCR占空比函数
}
欢迎光临 (http://www.51hei.com/bbs/) | Powered by Discuz! X3.1 |