欢迎来到天天文库
浏览记录
ID:25141820
大小:113.00 KB
页数:8页
时间:2018-11-18
《寻迹小车有效控制程序.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、//名称:寻迹小车控制程序//功能:控制小车绕黑线行驶//头文件包含#include"reg51.h"//定义存放P1口状态的全局变量unsignedcharP1_State=0xff;//定义存放红外遥控状态的全局变量unsignedcharIrDA_State=0xff;//////////////////////////1.电机控制端口分配/////////////////////////////左轮运转状态右轮运转状态//P2.0P2.1P2.2P2.3//01正转01正转//10反转10反转//11停止11停止//00非允许状态00非允
2、许状态//左轮控制端口sbitLeft_Motor_Goahead=P2^0;//该端口为低电平时,小车左轮正转(前进)sbitLeft_Motor_Back=P2^1;//该端口为低电平时,小车左轮反转(后退)//右轮控制端口sbitRight_Motor_Goahead=P2^2;//该端口为低电平时,小车右轮反转(后退)sbitRight_Motor_Back=P2^3;//该端口为低电平时,小车右轮反转(前进)///////////////////////2.小车运行状态控制子程序//////////////////////////2.1
3、前进子程序//功能:左轮正转、右轮正转,从而控制小车前进//入口参数:无//出口参数:无//调用示例:Car_Goahead();voidCar_Goahead(){Left_Motor_Goahead=0;//左轮正转Left_Motor_Back=1;Right_Motor_Goahead=0;//右轮正转Right_Motor_Back=1;}//2.2后退子程序//功能:左轮反转、右轮反转,从而控制小车后退//入口参数:无//出口参数:无//调用示例:Car_Back();voidCar_Back(){Left_Motor_Goahead
4、=1;//左轮反转Left_Motor_Back=0;Right_Motor_Goahead=1;//右轮反转Right_Motor_Back=0;}//2.3左转弯子程序//功能:左轮停转,右轮正转,从而控制小车左转弯//入口参数:无//出口参数:无//调用示例:Car_Turn_Left();voidCar_Turn_Left(){Left_Motor_Goahead=1;//左轮停转Left_Motor_Back=1;Right_Motor_Goahead=0;//右轮正转Right_Motor_Back=1;}//2.4右转弯子程序//功
5、能:左轮正转,右轮停转,从而控制小车右转弯//入口参数:无//出口参数:无//调用示例:Car_Turn_Right();voidCar_Turn_Right(){Left_Motor_Goahead=0;//左轮正转Left_Motor_Back=1;Right_Motor_Goahead=1;//右轮停转Right_Motor_Back=1;}//2.5停车子程序//功能:左轮停转,右轮停转,控制小车停车//入口参数:无//出口参数:无//调用示例:Car_Stop();voidCar_Stop(){Left_Motor_Goahead=1;
6、//左轮停转Left_Motor_Back=1;Right_Motor_Goahead=1;//右轮停转Right_Motor_Back=1;}////////////////////////////3.延时子程序//////////////////////////////3.1延时50ms子程序//功能:延时50ms//入口参数:无//出口参数:无//调用示例:delay_50ms();voiddelay_50ms(){TMOD=0x01;//T0,方式1,12MHz晶振TH0=(65536-50000)/256;TL0=(65536-5000
7、0)%256;TR0=1;while(!TF0);TF0=0;TR0=0;}//3.2延时1s子程序//功能:延时1s//入口参数:无//出口参数:无//调用示例:delay_1s();voiddelay_1s(){unsignedcharCount1;for(Count1=0;Count1<20;Count1++)delay_50ms();}//3.3延时5s子程序//功能:延时5s//入口参数:无//出口参数:无//调用示例:delay_5s();voiddelay_5s(){unsignedcharCount2;for(Count2=0;C
8、ount2<100;Count2++)delay_50ms();}//3.4延时10s子程序//功能:延时10s//入口参数:无//出口
此文档下载收益归作者所有