找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1162|回复: 0
打印 上一主题 下一主题
收起左侧

STM32 PWM程序

[复制链接]
跳转到指定楼层
楼主
ID:892729 发表于 2021-3-16 19:02 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
#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); //修改比较值,修改占空比
  */
}

}


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表