Bootstrap

电机驱动模块STM32F1x开发

一、电机驱动模块型号
1.1 产地: 中国大陆
电压: 24V
电源方式: 直流电
品牌: 艾思控
型号: AQMH2407ND
电压范围: 6.5-27
额定电流: 7
控制方式: 外部PWM、TTL电平
调速类型: 占空比
适用范围: 各种控制
在这里插入图片描述
1.2 模块线的连接

电机驱动模块1–1、2
ENAPA0
IN1PF8
IN2PF9
OUT1电机 +
OUT2电机 -
MCUVCC具体的和单片机引脚的电压相同,3.3V或5V
GNDGND
电机驱动模块1–3、4
ENAPA1
IN3PF10
IN4PF11
OUT3电机 +
OUT4电机 -
MCUVCC具体的和单片机引脚的电压相同,3.3V或5V
GNDGND
电机驱动模块2–1、2
ENAPA2
IN1PF12
IN2PF13
OUT1电机 +
OUT2电机 -
MCUVCC具体的和单片机引脚的电压相同,3.3V或5V
GNDGND
电机驱动模块2–3、4
ENAPA3
IN3PF14
IN4PF15
OUT3电机 +
OUT4电机 -
MCUVCC具体的和单片机引脚的电压相同,3.3V或5V
GNDGND
串口调试模块
5V5V
TXDPA10
RXDPA9
GNDGND
ST-LINK
SWCLK缺口靠左-左排-上至下-第5 个针
SWDIO缺口靠左-左排-上至下-第4 个针
GND缺口靠左-右排-上至下-最后 1 个针
3.3v缺口靠左-右排-上至下-第2 个针
5v电源模块 ((顺序:四个接口靠左,从上至下) )
接口15v 电压输出
接口2GND
接口3GND
接口412v 电源输入

二、程序开发

程序链接:

https://download.csdn.net/download/qq_37788383/11887939

2.1 头文件 .h文件

#ifndef __PWM_H
#define __PWM_H
#include "sys.h"
#include "delay.h"

/*******************************************
********************************************

IN1  IN2  ENA     OUT1,OUT2输出
 0    0    X       刹车
 1    1    X       悬空
 1    0   PWM      正转调速
 0    1   PWM      反转调速
 1    0    1       全速正转
 0    1    1       全速反转
 
 IN3  IN4  ENA    OUT3,OUT4输出
 0    0    X       刹车
 1    1    X       悬空
 1    0   PWM      正转调速
 0    1   PWM      反转调速
 1    0    1       全速正转
 0    1    1       全速反转
 
********************************************
*******************************************/
//控制(左右平移)电机1和2
#define bod1_IN1 PFout(8)
#define bod1_IN2 PFout(9)
#define bod1_IN3 PFout(10)
#define bod1_IN4 PFout(11)
//控制(前进和后退)电机3和4
#define bod2_IN1 PFout(12)
#define bod2_IN2 PFout(13)
#define bod2_IN3 PFout(14)
#define bod2_IN4 PFout(15)


#define KEY1  GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_2)//读取按键1 
#define KEY2  GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_3)//读取按键2

#define KEY1_PRES	1	//KEY1按下
#define KEY2_PRES	2	//KEY2按下


void TIM2_PWM_Init(u16 arr,u16 psc);
//电机1
void A0_forward_rotating(u16 t);   //A0正转调速
void A0_reversal_reverse(u16 t);   //A0反转调速
//电机2
void A1_forward_rotating(u16 t);   //A1正转调速
void A1_reversal_reverse(u16 t);   //A1反转调速
//电机3
void A2_forward_rotating(u16 t);   //A2正转调速
void A2_reversal_reverse(u16 t);   //A2反转调速
//电机4
void A3_forward_rotating(u16 t);   //A3正转调速
void A3_reversal_reverse(u16 t);   //A3反转调速
	
u8 KEY_Scan(u8 mode);  	//按键扫描函数		
void Key_state(void);
#endif

;