直流电机+L298N电机驱动模块
本次来写一下关于驱动直流电机的知识,今天目的是驱动它,下次写使用PWM精准的对直流电机进行控速。下面是我使用的直流电机图:
由于STM32单片机不能直接的输出较大电压和电流,所以得借助驱动模块来控制电机,我们使用的L298N电机驱动模块来驱动电机,当然也可以使用TB6612,L293D,ULN2003等电机驱动模块,他们原理都是一样的,会一个其他的都可以信手拈来。下面是L298N的图:
一个L298N电机驱动模块可以控制两个直流电机或者一个两相步进电机。支持两个电压的供电模式,5V或者12V。由于没有5V,12V的电源,所以我们用了15V的电源进行降压处理后为5V给其供电。使用5V的电压也是因为可以直接给单片机直接供电,可以将单片机与电脑分离开来。如果没有电源的话,也可以直接使用单片机5V电压给电机驱动模块提供电压。降压模块如下图,使用DC-DC模块焊的一个电路板。(其实电源就是12V的只是为了多加一个模块)DC-DC模块用时一定分清正负,要不然电容会炸的。黄色的纽扣扭动可以调节输出电压。
接下来是我驱动直流电机的整体图:
这个图连错了,注意不要这样来,分清in和out呀!!!
驱动电机的代码如下(我直接用的我们刚做完项目的代码,没有改,只需要使用PB5、PB6就好):
power.h
#ifndef __POWER_H
#define __POWER_H
#include "sys.h"#define PB5 PBout(5)
#define PB6 PBout(6)
#define PB7 PBout(7)
#define PB8 PBout(8)
#define PB9 PBout(9)
#define PB10 PBout(10)
#define PB11 PBout(11)
#define PB12 PBout(12)
#define PB13 PBout(13)
#define PB14 PBout(14)
#define PB15 PBout(15)
void POWER_Init(void);
void goon(void);
void back(void);
void right(void);
void left(void);#endif
power.c
#include "power.h"void POWER_Init()
{GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6|GPIO_Pin_5|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOB, &GPIO_InitStructure); GPIO_ResetBits(GPIOB,GPIO_Pin_6|GPIO_Pin_5|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15);
}void goon(void)
{PB5 =1;PB6 =0;}
完了直接在主函数里面调用就好:
int main(void){ delay_init();POWER_Init();while(1){goon();};
}
有什么问题下面留言,一起讨论解决。
直流电机+L298N电机驱动模块相关推荐
- 用寻迹模块L298n电机驱动模块制作Arduino寻迹小车四路(含清单,代码,接线,注意事项)
本帖是在参考了很多博客之后进行的一次实战加总结,参考连接如下: Arduino智能小车寻迹篇 不适用PWM调速彻底解决L298n电机驱动转速不同的问题 1.工作原理 总体思想:小车通过四路寻迹模块得到 ...
- 【Arduino蓝牙小车】L298N电机驱动模块详解
原文链接:[Arduino] 从零制作蓝牙小车 - 饮猫的学习日志 1. L298N模块的使用 这是一个L298N电机驱动模块的图片.你可能会觉得接口有一点点多.但其实搞清楚它的控制原理后就能很快完成 ...
- 【Arduino学习笔记】使用L298N电机驱动模块驱动直流电机
L298N是Arduino的电机驱动模块,能驱动步进电机和两路直流电机,驱动步进电机和直流电机的文章网上百度一大堆,这里我想说的是L298N模块外接独立12V电压驱动电机的方法.我使用的L298N模块 ...
- l298n电机驱动模块驱动直流电机(佛科院——深夜学习)
目录 一.为什么不能直接用单片机IO口驱动电机,要用电机驱动模块? 二.使用步骤: 1.L298n各引脚作用: 2.推荐的供电方式: 3.推荐的控制方式: 一.为什么不能直接用单片机IO口驱动电机,要 ...
- 继电器模块和L298N电机驱动模块的使用
单片机如何与L298N和继电器连接?什么时候选择L298N或继电器模块? L298N模块 主控芯片为L298N的双H桥电机驱动模块,驱动电压为5~35V,一般驱动直流电机正反转一般使用L298N. 接 ...
- 【STM32小案例 04 】STM32简单使用L298N电机驱动模块 控制直流电机正反转
本文仅简单驱动该模块并实现直流减速电机的正反控制,并无步进电机的控制. 实验环境: (一)STM32F10X 单片机 (二)L298N驱动模块 (三)若干直流减速电机 第一步:L298N正确与STM3 ...
- Arduino 项目笔记 | 基于 Arduino 单片机的 A4988 和 L298N电机驱动模块实验记录
目录 1. Arduino Nano 简介 2. 技术规格 3. 输入和输出 1. A4988 简介 2. A4988 引脚定义图及功能说明 (四相步进电机) 3. Arduino使用A4988控制电 ...
- l298n电机驱动模块_带DRV8825驱动器模块和Arduino的控制步进电机
如果您打算建造自己的3D打印机或CNC机器,则需要控制一堆步进电机.而且,由一个arduino控制所有这些,可能会占用大量的处理时间,并且不会给它留下很多做其他事情的空间.除非您使用独立的专用步进电机 ...
- l298n电机驱动模块使用方法_SPDK virtio 驱动模块介绍及使用
作者简介闫亮 Intel高级软件工程师专注于开源存储SPDK的测试和优化 简介 CONTENTS SPDK virtio模块介绍 SPDK virtio 用户模式使用示例 SPDK virtio ...
- l298n电机驱动模块使用方法_家用柴油发电机使用方法
张甲梁给客户讲述一台10KW家用柴油发电机技术问题,步就是检查发电机各个地方是否有破损,因为由于物流等原因,可能砸坏什么的,欧鲍张甲梁为您家电常规问题 家用柴油发电机使用方法,我们以10KW小型柴油发 ...
最新文章
- java entry
- springboot获取原生js请求_springboot跳转原生html
- 第三天学习Java的笔记(自增自减,赋值,比较,逻辑,三元)
- springboot2 配置redis报错 redis timeout Value not a valid duration解决办法
- oracle回滚段空间满了,Oracle回滚段表空间文件丢损怎样处理?
- 程序员必须掌握的十大经典算法
- 荐书丨《哥德尔、艾舍尔、巴赫书:集异璧之大成》:机器人与音乐的次元壁破了
- 网易云音乐灰色歌曲在线听的方法
- Python网络爬虫实训:如何下载韩寒博客文章
- Oracle备份的几种方式
- Word打开目录导航、多页视图显示文章的方法
- bootstrap 动态横向时间轴_简洁的横向水平时间轴特效
- 在C语言中对于整形变量采用有符号数,C语言编程(张欣 机制192-3)-中国大学mooc-题库零氪...
- Docker常用命令(启动、镜像相关、容器相关、文件拷贝、目录挂载、查看容器IP地址、Docker备份与恢复)
- canvas小虫子(利用canvas形成多个形状类似虫子的线条)
- html向下的箭头符号怎么打,向下的箭头怎么打
- 李宏毅《机器学习》误差
- 力扣算法学习(十二)
- 如何制作天堂2免导版天堂2单机服务端
- XSS(跨站脚本攻击)原理详解(内含攻击实例)