找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6891|回复: 9
收起左侧

基于STM32F407/51单片机与L298N驱动控制小车制作

  [复制链接]
ID:589140 发表于 2019-12-8 16:04 | 显示全部楼层 |阅读模式
之前想用单片机控制L298N控制小车走,弄了好久都没有弄成功,网上自己也不太找得到例程,或者说找到了也不太明白..可能自己太傻了..
就想着上传一下自己的程序给像之前的我一样的人..希望自己能写的清楚,让有需要的小白们明白。

L298N原理网上都有,直接网上搜一下就行。
STM32F407可以是开发板,也可以是mini板~

直接12V电池供电给L298N,12V接稳压模块稳到5V供电给单片机。

D0,D1,D2,D3(这是自己在程序里面的定义,实际上分别连接的是OUT1,OUT2,OUT3,OUT4)是可以控制马达从而控制轮子正反转。
控制两边轮子正反转,比如说D0=1,D1=0使得左边轮子正转,那么D0=0,D1=1使得左边轮子反转,如果同时为0或同时为1,轮子就不会动。这是根据大家接线方式来的,你可以左边轮子接上OUT1,OUT2或者接上OUT3,OUT4.

我就是给轮子正反转,然后用PWM输出占空比有一个电压,不同电压对应不同的速度,如果输出小了的话,轮子可能会发出那种卡住的声音然后动不了,大家可以往上调调,基本轮子就可以动了。单片机PWM输出分别连接L298N的ENA和ENB,STM32是B6,D13输出PWM占空比连接ENA,ENB,51单片机是自己定义两个管脚接出连接ENA,ENB。


接线时候一定要记得将单片机的GND和L298N的GND接一起,就是共地,不然可能会不转动。

我的想法就是单片机输出4个高低电平给IN1,IN2,IN3,IN4,然后OUT1,OUT2,OUT3,OUT4输出和前边一样高低电平控制两边轮子正反转,然后通过单片机两个管脚输出PWM的大小接到ENA,ENB控制速度,有正反转,有速度,就可以动起来了。

所有的接线就是电源+12V,GND,   单片机输入IN1,IN2,IN3,IN4,    L298N输出OUT1,OUT2,OUT3,OUT4给轮子,   单片机机输出两路PWM给L298N的ENA,ENB(不懂PWM的话可以直接修改程序里面的speed1和speed2的大小就可以修改输出(电压大小)小车速度大小).

如果所有接线正确,轮子却没有反应,可以拿一步步检查。1,检查L298N与单片机是否共地 2,用万用表测量OUT1,OUT2两端(或者OUT3,OUT4两端,总之就是接同一个马达的两个端口)是否有电压,显示有电压的话,可以把PWM输出调高点,如果没有电压的话就去检查IN1,IN2之间是否有电压,没有的话就去检查用万用表测量ENA与GND之间是否有电压,一步步找原因。

大家接线完不知道轮子正反转,可以在main函数里面写D0=1,D1=0,D2=1,D3=0(我自己定义的,其实就是IN1,IN2,IN3,IN4),再给一个速度,看轮子的转向就行了~

第一次发帖,就是把自己的经验啥的写一写,并不是很专业,大佬就不用来看了,写给刚学的小白们看的,如果有问题的话欢迎大家指正啊~我们一起进步鸭



IMG_2065.JPG
IMG_2067.JPG
IMG_2070.JPG

小车.7z

300.22 KB, 下载次数: 183, 下载积分: 黑币 -5

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:635534 发表于 2019-12-11 21:43 | 显示全部楼层
谢谢楼主,评论收藏一下,正好回宿舍要开始连L298N了
回复

使用道具 举报

ID:29972 发表于 2019-12-14 21:21 | 显示全部楼层
能走直线吗?
回复

使用道具 举报

ID:589140 发表于 2019-12-18 21:07 来自手机 | 显示全部楼层
zk 发表于 2019-12-14 21:21
能走直线吗?

可以啊,只要你设置左右两边轮子都是正转并且速度设置一样就可以了
回复

使用道具 举报

ID:29972 发表于 2019-12-19 20:55 | 显示全部楼层
PID实现的?能上视频吗?
回复

使用道具 举报

ID:700555 发表于 2020-4-12 10:26 | 显示全部楼层
不好意思,初次接触STM32F407的编程,请问那部分是关于更改PWM的电压的
回复

使用道具 举报

ID:805912 发表于 2020-7-20 18:23 | 显示全部楼层
请问是用了F407的吗
回复

使用道具 举报

ID:805912 发表于 2020-7-22 10:42 | 显示全部楼层
12V接稳压模块稳到5V供电给单片机。
这个12V是供L298N的那个电源吗?
回复

使用道具 举报

ID:838807 发表于 2021-9-27 15:55 | 显示全部楼层
哥 调速是控制使能端的pwm波吗? 转弯如何实现呢?两边速度不同就可以了吗?
回复

使用道具 举报

ID:990554 发表于 2022-8-14 16:43 | 显示全部楼层
怎么把程序下载进stm32开发板里面
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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