标题: STM32 PWM程序 [打印本页]

作者: sxz111    时间: 2021-3-16 19:02
标题: STM32 PWM程序
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "pwm.h"


int main(void)
{
u16 led0pwmval=0;   
u8 dir=1;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2
delay_init(168);  //初始化延时函数
uart_init(115200);//初始化串口波特率为115200
//pwm_int_TIM2(9999,143);         //======初始化pwm输出 72000 000 /7199+1=10000
  //TIM3_PWM_Init(9999,143); //84M/84=1Mhz的计数频率,重装载值500,所以PWM频率为 1M/500=2Khz.     
pwm_int_TIM1(7199); //84M/84=1Mhz的计数频率,重装载值500,所以PWM频率为 1M/500=2Khz.     
// pwm_int_TIM3(7199,0);
   while(1) //实现比较值从0-300递增,到300后从300-0递减,循环
{
   delay_ms(10);  
  //if(dir)led0pwmval++;//dir==1 led0pwmval递增
  //else led0pwmval--; //dir==0 led0pwmval递减
   //if(led0pwmval>300)dir=0;//led0pwmval到达300后,方向为递减
  //if(led0pwmval==0)dir=1; //led0pwmval递减到0后,方向改为递增
  
  TIM_SetCompare1(TIM3,710); //修改比较值,修改占空比
  TIM_SetCompare1(TIM2,710);   //设置TIM2通道2的占空比  pwm1/7200   PA1
  TIM_SetCompare2(TIM2,710);   //设置TIM2通道2的占空比  pwm1/7200   PA1
  TIM_SetCompare3(TIM2,710);   //设置TIM2通道2的占空比  pwm1/7200   PA1
  TIM_SetCompare4(TIM2,710);   //设置TIM2通道2的占空比  pwm1/7200   PA1
  TIM_SetCompare1(TIM3,2220);
  TIM_SetCompare2(TIM3,2220);
  TIM_SetCompare3(TIM3,2220);
  TIM_SetCompare4(TIM3,2220);
  TIM_SetCompare1(TIM1,710);   //设置TIM2通道2的占空比  pwm1/7200   PA1
  TIM_SetCompare2(TIM1,710);   //设置TIM2通道2的占空比  pwm1/7200   PA1
  TIM_SetCompare3(TIM1,710);   //设置TIM2通道2的占空比  pwm1/7200   PA1
  TIM_SetCompare4(TIM1,710);   //设置TIM2通道2的占空比  pwm1/7200   PA1
  //delay_ms(1000);
  //TIM_SetCompare1(TIM2,0);   //设置TIM2通道2的占空比  pwm1/7200   PA1
  /*TIM_SetCompare1(TIM3,40); //修改比较值,修改占空比
  delay_ms(10);
  TIM_SetCompare1(TIM3,0); //修改比较值,修改占空比
  */
}

}







欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1