资源描述:
《基于某51单片机智能小车循迹程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实用标准文档#include#include#defineuintunsignedint#defineucharunsignedchar/**********************************/ucharled_data[9]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80};ucharcircle=0,cir_comp=0,cir_count=0;//设定圈数,实际圈数ucharturn_count=0;bitend=0;//圈数跑完标志/************
2、*********************/sbitxg0=P1^0;//左寻轨对管sbitxg1=P1^1;//中间寻轨对管sbitxg2=P1^2;//右寻轨对管sbitxz=P1^3;//感应挡板对管/*********************************/sbitQ_IN1=P2^0;//车前左轮控制sbitQ_IN2=P2^1;sbitQ_IN3=P2^2;//车前右轮控制sbitQ_IN4=P2^3;sbitH_IN1=P2^4;//车尾左轮控制sbitH_IN2=P2^5;文案大全实用标准文档sbitH_IN3=P2^6;//车尾右
3、轮控制sbitH_IN4=P2^7;sbitQ_ENA=P3^0;//车前左轮使能,PWMsbitQ_ENB=P3^1;//车前右轮使能,sbitH_ENA=P3^6;//车尾左轮使能,sbitH_ENB=P3^7;//车尾右轮使能,/****************************************/#definestra_q_l100//直线行走时,四个轮子占空比调试#definestra_q_r100#definestra_h_l100#definestra_h_r100#defineturn_q_l100//转弯时四个轮子的占空比调试#
4、defineturn_q_r100#defineturn_h_l100#defineturn_h_r100#defineturnr_time2900//右转弯时的延时常数#defineturnl_time3000//左转弯时的延时常数#definedt_time5800//原地掉头时延时常数#defineover_time1000//停止延时#defineback_time2500//走完环形,回到直道延时转弯#defineblack_time1500//过黑线的时间文案大全实用标准文档#definecorrect_l_time700//左矫正时间#defi
5、necorrect_r_time700//右矫正时间#definehou_time200/***************************************/ucharq_duty_l,q_duty_r,h_duty_l,h_duty_r,//车前后左右轮占空比i=0,j=0,k=0,m=0;/**************************************/voiddelay_cir(uintn){ucharx;while(n--){for(x=0;x<250;x++);};}/***************************
6、********/voiddelay(uintct)//延时函数{uintt;t=ct;while(t--);文案大全实用标准文档}/***************************************/voidstraight()//直走{q_duty_l=stra_q_l;q_duty_r=stra_q_r;h_duty_l=stra_h_l;h_duty_r=stra_h_r;Q_IN1=1;Q_IN2=0;Q_IN3=1;Q_IN4=0;H_IN1=1;H_IN2=0;H_IN3=1;H_IN4=0;}/******************
7、*********************/voidhoutui()//后退{q_duty_l=stra_q_l;文案大全实用标准文档q_duty_r=stra_q_r;h_duty_l=stra_h_l;h_duty_r=stra_h_r;Q_IN1=0;Q_IN2=1;Q_IN3=0;Q_IN4=1;H_IN1=0;H_IN2=1;H_IN3=0;H_IN4=1;}/***************************************/voidturn_left()//左转{q_duty_l=turn_q_l;q_duty_r=turn_q_r
8、;h_duty_l=turn_h_l;h_duty_