2011-10-27
单片机熟悉了,自然就要开始做小车了。
准备工作当然是淘宝啦,买了一个3轮到小车底盘32元,L298N双电机控制电路板22元,还有一些扎带、铜柱、电池盒等,都是很便宜的东西。
红外只有1条数据线,十分简单,就从红外遥控开始。把红外的例程改一下,就成了红外遥控的程序了。
这里有2个小插曲,我放上车子的是6块钱的最小板(其实就是把IO引出来,加个晶振),P0没有上拉电阻,所以不能连电机控制板,改用P1就好了。还有对单片机编程不熟,main()函数里一定要加一个while(1){}的死循环,不然程序马上就结束了(很菜是吧:) )。
这里要说明一下的是红外的信号不是连续的,所以是按一下就执行某个动作,要停止还得按停止按键。
先在电脑上测试程序,测试好后,把4个充电电池装到电池盒,同时给51单片机和电机控制板供电,搞定。开车啦。
51单片机程序代码
/*
IN1 > P10
IN2 > P11
IN3 > P12
IN4 > P13
*/
/*预处理命令*/
#include<reg52.h> //包含单片机寄存器的头文件
#include<intrins.h> //包含_nop_()函数定义的头文件
#define uchar unsigned char
#define uint unsigned int
#define motor P1
/* 函数申明 -----------------------------------------------*/
void delay(uchar x);
/* 变量定义 -----------------------------------------------*/