/*功能:寻迹小车使用芯片:A T 89S5 2 或者 STC89 C5 2 或 AT89S51 S TC89 C 51晶振:1 2 MHZ编译环境:Kei l作者:MH~ﻩ */#include <re g 51、h> // 引用标准库得头文件#in c l u de #def i ne u cha r un si g n ed cha r#defin e uin t u ns i gned int//=================电机驱动=====================s b it dianji_r = P3^0; //右边电机控制口,低电平转?s bi t di a nji_l = P3^7; //左边电机控制口,低电平转//=============循迹感应接口======================s bit x j mk_r = P 3^2;// 右边寻迹模块检测口 I NT 0sbit x jmk_l = P 3^3;// 左边寻迹模块检测口 INT1v oid c h eck_righet();//右边时候检测到黑线测试程序v o id c he c k_le f t();//左边时候检测到黑线测试程序void de l a y_50 us(u i nt t);vo i d de l a y ms(u i n t Ms);u cha r r_co un t;//右边传感器检测到得次数计数单元uch a r l_c o unt;uint time;//***********************主程序******************************m a in() { time=5 0; d i a nj i_r=0;//上电时右侧电机运行 d i anj i_l=0;//上电时左侧电机运行 EA=1; E X 1=1; EX0=1; IT1=0; IT0=0; xjmk_r=1;//置 IO 为1,准备读取数据 x jmk_l=1; _no p_(); r_count=0; l_cou nt=0; whi l e(1) { _nop_(); // chec k_r i g h e t();//调用右边寻迹检测传感器 // check_left();// if(r_co un t>=1) { d elayms(tim e); d ianji_r=0; di an j i_l=0; r_c ount=0; _n o p_(); } i f(l_co u nt〉=1) { d e layms(t im e); di an j i_r=0; d i anji_l=0; l_co un t=0; _nop_(); } }}v o id init0int() inte r ru p t 2 { l_count=5; d ianji_l=1; d ianj i_r=0; if(r_cou n t〉0) { E X 0=0; delayms(20); if(tim e>=20)t ime-=19; EX0=0; ...