找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2715|回复: 2
收起左侧

stm32F429控制电机驱动源程序

[复制链接]
ID:343750 发表于 2019-6-24 21:45 | 显示全部楼层 |阅读模式
使用F429输出PWM,从而控制减速电机的速度。实验主要是通过对定时器3的通道3和通道4的配置来实现PWM的输出,并且可以通过调整占空比来实现对电机转速的控制。

单片机源程序如下:
  1. #include "sys.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "motor.h"
  5. #include "timer.h"

  6. int main(void)
  7. {
  8.     //u8 dir=1;
  9.     u16 motor0pwmval=100;
  10.         u16 motor1pwmval=100;
  11.     HAL_Init();                     //初始化HAL库   
  12.     Stm32_Clock_Init(360,25,2,8);   //设置时钟,180Mhz
  13.     delay_init(180);                //初始化延时函数
  14.     uart_init(115200);              //初始化USART
  15.     MOTOR_Init();                     //初始化LED
  16.     TIM3_PWM_Init(500-1,90-1);      //90M/90=1M的计数频率,自动重装载为500,那么PWM频率为1M/500=2kHZ
  17.     while(1)
  18.     {
  19.                 delay_ms(10);
  20.                
  21.                 /*if(dir)led0pwmval++;                                //dir==1 led0pwmval递增
  22.                 else led0pwmval--;                                //dir==0 led0pwmval递减
  23.                 if(led0pwmval>300)dir=0;                        //led0pwmval到达300后,方向为递减
  24.                 if(led0pwmval==0)dir=1;        */                //led0pwmval递减到0后,方向改为递增
  25.                
  26.                 TIM_SetTIM3Compare3(motor0pwmval);        //修改比较值,修改占空比
  27.                 TIM_SetTIM3Compare4(motor1pwmval);        //修改比较值,修改占空比
  28.     }
  29. }
复制代码

所有资料51hei提供下载:
PWM控制电机.7z (520.77 KB, 下载次数: 76)
回复

使用道具 举报

ID:588621 发表于 2019-8-2 18:39 来自手机 | 显示全部楼层
真好可以学习
回复

使用道具 举报

ID:697524 发表于 2020-2-24 17:02 | 显示全部楼层
谢谢 刚好我也做
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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