K_A08_009 基于 STM32等单片机驱动TB6612模块按键控制直流电机正反转加减速启停
目录
一、资源说明
二、基本参数
1、参数
2、引脚说明
三、驱动说明
TB6612模块驱动说明
对应程序:
ENA ENB输出PWM
四、部分代码说明
接线说明
1、STC89C52RC+TB6612模块
2、STM32F103C8T6+TB6612模块
五、基础知识学习与相关资料下载
六、视频效果展示与程序资料获取
七、项目所有材料清单
八、注意事项
九、接线表格
一、资源说明
单片机型号 |
测试条件 |
模块名称 |
代码功能 |
STC89C52RC |
1.晶振11.0592M |
模块 |
单片机驱动TB6612模块按键控制直流机正反转加减速启停 |
STM32F103C8T6 |
|
TB6612模块 |
二、基本参数
1、参数
2、引脚说明
TB6612模块 |
引脚说明 |
VCC |
TB6612供电(此处8V供电 根据实际来) |
GND |
电源地 |
5V |
5V/3.3V |
GND |
单片机电源GND |
PWMA |
AO1,AO2 输出端使能控制(默认短接 全速输出)也可接PWM信号调速 |
AIN1 |
对应AO1 AIN1输入高则AO1输出高 |
AIN2 |
对应AO2 AIN2输入高则AO2 输出高 |
STBY |
高电平有效 低电平输出无效 |
BIN1 |
对应BO1 BIN1输入高则BO1 输出高 |
BIN2 |
对应BO2 BIN2输入高则BO2 输出高 |
PWMB |
BO1 ,BO2 输出端使能控制(默认短接 全速输出)也可接PWM信号调速 |
AO1 |
接电机和AO2 为一组 输出高低由AIN1控制 |
AO2 |
接电机和AO1为一组 输出高低由AIN2控制 |
BO1 |
接电机和BO2 为一组 输出高低由BIN1控制 |
BO2 |
接电机和BO1 为一组 输出高低由BIN2控制 |
三、驱动说明
驱动与L298N很类似 此处直接用L298N程序
TB6612模块驱动说明
对应程序:
以下以STC89C52RC程序为例
//正转
void turn_Syntropy(void)
{IN1_R=1;IN2_R=0;IN3_L=1;IN4_L=0;}
//反转void turn_Reverse(void)
{IN1_R=0;IN2_R=1;IN3_L=0;IN4_L=1;}
//停止void turn_Stop(void)
{IN1_R=1;IN2_R=1;IN3_L=1;IN4_L=1;Pwm_L=0;Pwm_R=0;TR0=0;
}
ENA ENB输出PWM
ENA ENB输出PWM由定时器实现,PWM_L PWM_R分别对应ENA ENB
//定时器0中断服务函数
void tim0() interrupt 1
{TL0 = 0xA4; //设置定时初值TH0 = 0xFF; //设置定时初值 0.1mstimes++;if(times<=Speed){Pwm_L=1;Pwm_R=1;}else{Pwm_L=0;Pwm_R=0;} if(times>=Period){times=0;}
}
四、部分代码说明
接线说明
需要自定义引脚可在此处更改,STM32要自定义引脚的话也要注意引脚时钟使能的更改
1、STC89C52RC+TB6612模块
//TB6612引脚sbit Pwm_L=P1^5;sbit IN1_R=P1^4;sbit IN2_R=P1^3;sbit IN3_L=P1^2;sbit IN4_L=P1^1;sbit Pwm_R=P1^0;//按键引脚sbit K_Start_Stop=P2^0; //启停按键sbit K_Syntropy_Reverse=P2^1; //两电机同向反向按键sbit K_UP_Speed=P2^2; //两电机同时加速按键sbit K_Down_Speed=P2^3; //两电机同时减速按键
2、STM32F103C8T6+TB6612模块
//TB6612引脚 GPIOB#define IN1_L GPIO_Pin_12 //#define IN2_L GPIO_Pin_13 //#define IN3_R GPIO_Pin_14 // #define IN4_R GPIO_Pin_15 // //TB6612 ENA ENB#define GENERAL_TIM_CH1_GPIO_CLK RCC_APB2Periph_GPIOA#define GENERAL_TIM_CH1_PORT GPIOA#define GENERAL_TIM_CH1_PIN GPIO_Pin_6// TIM3 输出比较通道2#define GENERAL_TIM_CH2_GPIO_CLK RCC_APB2Periph_GPIOA#define GENERAL_TIM_CH2_PORT GPIOA#define GENERAL_TIM_CH2_PIN GPIO_Pin_7//按键引脚GPIOB#define K_Start_Stop GPIO_Pin_4 //启停按键 GPIOB_Pin_4 0x0010 //?GPIOB_Pin_3#define K_Syntropy_Reverse GPIO_Pin_5 //两电机同向反向按键 GPIOB_Pin_5 0x0020#define K_UP_Speed GPIO_Pin_6 //两电机同时加速按键 GPIOB_Pin_6 0x0040#define K_Down_Speed GPIO_Pin_7 //两电机同时减速按键 GPIOB_Pin_7 0x0080
五、基础知识学习与相关资料下载
- STC89C52RC程序下载 直戳跳转
- STM32F103C8T6程序下载
- 串口下载 直戳跳转
- ST-LINK下载 直戳跳转
- J-LINK下载 直戳跳转
- DAP-LINK下载 直戳跳转
六、视频效果展示与程序资料获取
视频连接 直戳跳转
资料获取 ( 滑到最后添加群号看公告免费获取)
七、项目所有材料清单
STC89C52RC驱动方案 |
图片 |
STM32F103C8T6驱动方案 |
图片 |
备注 K_A08_009 |
STC89C52RC系统板X1 |
STM32F103C8T6系统板X1 |
|
||
TB6612模块x1 |
TB6612模块x1 |
|||
直流电机x2 |
直流电机x2 |
|||
Micro USB线X1 |
Micro USB线X2 |
|||
杜邦线若干 |
杜邦线若干 |
|||
J-LINK下载器 |
八、注意事项
- VCC GND请勿接反,接反易烧
- 现象异常时,排除接线接触不良
九、接线表格
单片机型号 |
模块 |
对应引脚(上:模块引脚 下:单片机引脚) |
|||||||
STC89C52RC |
TB6612模块 |
PWMA |
AIN1 |
AIN2 |
BIN1 |
BIN2 |
PWMB |
GND |
VCC |
P1.5 |
P1.4 |
P1.3 |
P1.2 |
P1.1 |
P1.0 |
GND |
5V |
||
按键模块 |
KEY1 |
KEY2 |
KEY3 |
KEY4 |
GND |
||||
P2.0 |
P2.1 |
P2.2 |
P2.3 |
GND |
|||||
STM32F103C8T6 |
TB6612模块 |
PWMA |
AIN1 |
AIN2 |
BIN1 |
BIN2 |
PWMB |
GND |
VCC |
PA6 |
PB12 |
PB13 |
PB14 |
PB15 |
PA7 |
GND |
5V |
||
按键模块 |
KEY1 |
KEY2 |
KEY3 |
KEY4 |
GND |
||||
PB4 |
PB5 |
PB6 |
PB7 |
GND |
K_A08_009 基于 STM32等单片机驱动TB6612模块按键控制直流电机正反转加减速启停相关推荐
- K_A08_004 基于 STM32等单片机驱动MX1919模块按键控制直流电机正反转加减速启停
目录 一.资源说明 二.基本参数 1.参数 2.引脚说明 三.驱动说明 1.MX1919模块驱动时序 2.对应程序: 3.PWM信号 四.部分代码说明 接线说明 1.STC89C52RC+MX1919 ...
- K_A08_003 基于 STM32等单片机驱动L9110模块按键控制直流电机正反转加减速启停
目录 一.资源说明 二.基本参数 1.参数 2.引脚说明 三.驱动说明 L9110模块驱动时序 对应程序: PWM信号 四.部分代码说明 接线说明 1.STC89C52RC+L9110模块 2.STM ...
- K_A08_002 基于 STM32等单片机驱动MAX1508模块按键控制直流电机正反转加减速启停
目录 一.资源说明 二.基本参数 1.参数 2.引脚说明 3.驱动说明 MAX1508模块驱动时序 对应程序: PWM信号 四.部分代码说明 接线说明 1.STC89C52RC+MAX1508模块 2 ...
- K_A08_005 基于 STM32等单片机驱动XY-160D模块按键控制直流电机正反转加减速启停
目录 一.资源说明 二.基本参数 四.部分代码说明 接线说明 1.STC89C52RC+XY-160D模块 2.STM32F103C8T6+XY-160D模块 五.基础知识学习与相关资料下载 六.视频 ...
- K_A08_012 基于 STM32等单片机驱动 DRV8833 模块按键控制直流电机正反转
目录 一.资源说明 二.基本参数 参数 引脚说明 三.驱动说明 驱动时序 对应程序: 四.部分代码说明 接线说明 STC89C52RC+DRV8833模块 STM32F103C8T6+DRV8833模 ...
- K_A07_003 基于 STM32等单片机驱动DRV8825模块按键控制步进电机正反转
目录 一.资源说明 二.基本参数 1.参数 2.引脚说明 三.驱动说明 SETP时序 对应程序: 细分说明 程序 四.部分代码说明 1.接线说明 1.1.STC89C52RC+DRV8825模块 1. ...
- K_A07_001 基于 STM32等单片机驱动A4988模块按键控制步进电机正反转
目录 一.资源说明 二.基本参数 1.参数 2.引脚说明 三.驱动说明 SETP时序 对应程序: 细分说明 程序 四.部分代码说明 1.接线说明 1.1.STC89C52RC+A4988模块 1.2. ...
- K_A07_005 基于 STM32等单片机驱动 DRV8833 模块按键控制步进电机正反转
目录 一.资源说明 二.基本参数 1.参数 2.引脚说明 三.驱动说明 步进电机驱动时序 对应程序: 四.部分代码说明 1.接线说明 1.1.STC89C52RC+DRV8833模块 1.2.STM3 ...
- K_A07_002 基于 STM32等单片机驱动ULN2003模块按键控制步进电机正反转
目录 一.资源说明 二.基本参数 1.参数 2.引脚说明 三.驱动说明 步进电机驱动时序 反向输出 对应程序: 四.部分代码说明 1.接线说明 1.1.STC89C52RC+ULN2003模块 1.2 ...
最新文章
- java图形用户界面添加背景颜色不成功的解决方案
- svpwm矢量控制电机相电压波形_如何深入理解SVPWM?
- Windows Forms 实现安全的多线程详解
- C# DataGridView属性设置
- hiho 第1周 最长回文子串
- C++之关键字:override
- Visual Studio 2010 SP1将支持HTML5和CSS3
- [Python设计模式] 第14章 老板来了——观察者模式
- poi导出word文档
- 利用 David Lowe 的sift源码实现遗留物检测
- 以太坊教程-使用 remix-ide 开发以太坊智能合约
- 汽车租赁APP应用开发
- 寿星万年历源代码(JAVA/VB NET)
- 最小二乘法的线性拟合
- Android OkHttp 源码解析 - 拦截器
- Oracle ORA-01460报错解决方法
- 腾讯云服务器windows系统重装为Linux系统
- 2019年暑假 纪中培训总结
- syslog与syslog服务器的配置
- Android端一对一视频聊天系统功能实现方式