电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

51单片机循迹小车程序

51单片机循迹小车程序_第1页
1/4
51单片机循迹小车程序_第2页
2/4
51单片机循迹小车程序_第3页
3/4
/*功能:寻迹小车使用芯片:AT89S52 或者 STC89C52 或 AT89S51 STC89C51晶振:12MHZ编译环境:Keil作者:MH~ */#include 〈reg51。h> // 引用标准库的头文件#include 〈intrins。h〉#define uchar unsigned char#define uint unsigned int//=================电机驱动=====================sbit dianji_r = P3^0; //右边电机控制口,低电平转?sbit dianji_l = P3^7; //左边电机控制口,低电平转//=============循迹感应接口======================sbit xjmk_r = P3^2;// 右边寻迹模块检测口 INT0sbit xjmk_l = P3^3;// 左边寻迹模块检测口 INT1void check_righet();//右边时候检测到黑线测试程序void check_left();//左边时候检测到黑线测试程序void delay_50us(uint t);void delayms(uint Ms);uchar r_count;//右边传感器检测到的次数计数单元uchar l_count;uint time;//***********************主程序******************************main() { time=50; dianji_r=0;//上电时右侧电机运行 dianji_l=0;//上电时左侧电机运行 EA=1; EX1=1; EX0=1; IT1=0; IT0=0; xjmk_r=1;//置 IO 为 1,准备读取数据 xjmk_l=1; _nop_(); r_count=0; l_count=0; while(1) { _nop_(); // check_righet();//调用右边寻迹检测传感器 // check_left();// if(r_count>=1) { delayms(time); dianji_r=0; dianji_l=0; r_count=0; _nop_(); } if(l_count〉=1) { delayms(time); dianji_r=0; dianji_l=0; l_count=0; _nop_(); } } }void init0int() interrupt 2 { l_count=5; dianji_l=1; dianji_r=0; if(r_count〉0) { EX0=0; delayms(20); if(time〉=20)time—=19; EX0=0; } return;}void init1int() interrupt 0 { r_count=5; dianji_r=1; dianji_l=0; if(l_count>0) { EX1=0; delayms(20); if(time>=20)time-=19; EX1=1;} return; }//*******************************************************************************//函数名称://功能:左边边时候检测到黑线测试程序void check_left(){ if(xjmk_l==0)//检测右边的传感器是否感应到黑线 { delay_50us(1);//延时,去除机械振动 _nop_(); if(xjmk_l==0)//再...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

51单片机循迹小车程序

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部