从零开始做基于51的循迹小车-Day1-让小车动起来!

文章目录

一.概要

对于刚学完51单片机的同学们来说,做个项目是最好的选择。在众多项目中,循迹小车是最好的选择,涵盖了51单片机大部分知识点。

二.整体架构流程

本版本的循迹小车用到的主要技术模块有:利用PWM对电机进行调速,红外避障模块,超声波避障模块,四路红外寻迹模块,舵机控制,蓝牙控制。

三.Day1做的事

1.准备的材料

  L298N电机驱动模块(两个)

可充电12V锂电池

一档小开关

51最小系统 (芯片是STC89C52RC)

AMS117-5.0V降压模块

4个电机,4个轮子,一个车身架子

n条杜邦线

一卷比较粗的电线,能承载6A以上的电流

一个USB-TTL的下载器

2.接线!

--1.先让四电机分别与两个L298N模块项连接(一个电机两极分别连接到相邻的OUTx上)

--2.再把电源与开关的线按图中的方式接好(开关一定要接在正级)

--3.再让两L298N模块并联

--4.让L298N模块与AMS117-5.0V降压模块并联

--5.再把稳压模块与51最小系统连接

注意:从电源出来的线不能是杜邦线,必须得是比杜邦线粗的电线(能承载6A以上的电流),否则当所有模块装好之后,有些模块可能会因为电流太小而带不动。

--6.把51最小系统的引脚用杜邦线接在L298N模块的ENA到ENB这六个接口上,如图

3.代码

根据接的IO口写代码,我接的顺序是

因此代码为

#include <REGX52.H>

//左前轮
sbit IN11 = P0^3;
sbit IN12 = P0^4;
//右前轮
sbit IN13 = P0^5;
sbit IN14 = P0^6;
//左后轮
sbit IN21 = P3^3;
sbit IN22 = P3^4;
//右后轮
sbit IN23 = P3^5;
sbit IN24 = P3^6;

void main()
{
	

	while(1)
	{
	//左前轮    IN11=1,IN11=0前进  IN11=0,IN11=1后退
	IN11=1;
	IN12=0;
	//右前轮		IN13=0,IN14=1前进  IN11=1,IN11=0后退
	IN13=1;			
	IN14=0;
	//左后轮		IN21=1,IN22=0前进  IN21=0,IN22=1后退
	IN21=0;
	IN22=1;
	//右后轮		IN23=0,IN24=1前进  IN23=1,IN24=0后退
	IN23=0;
	IN24=1;
	}
}

注:由于电机的极性,电线的接法各不相同,于是轮子向前或者向后所给的代码也不相同,但没有关系,可以一个个电机调试,最后得出哪些IO口怎么给电平是正确的。

4.烧录的注意事项

 很可能一开始一直烧录不进去,会卡在正在扫描单片机那里,多插拔几次下载器就好了,多烧录几次就好了。(具体原因还没找到)

四,每日小结

今天的任务就是让小车动起来了,花时间最多的地方是在接线,作者为了做的更好,在很多连接口都选择了锡焊,花了很多时间,但也是锻炼自己焊接能力的机会。最终得出的结论就是实践出真知,很多问题都是在实践中发现的,但是办法总比困难多,不要放弃!接下来作者会持续发表做循迹小车的日记。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值