智能小车程序51.doc
《智能小车程序51.doc》由会员分享,可在线阅读,更多相关《智能小车程序51.doc(24页珍藏版)》请在三一办公上搜索。
1、#include#includePWMtime1.h /PWM头文件#include #includedelay.h#define uint unsigned int#define uchar unsigned char/-变量定义-/uint ruku_dengdai_jishiqi; / 入库等待计时器uint cesu_jishuqi; /测速 计数器uint fache_yanshi_jishiqi; /发车延时 计数器/光电传感器 参数定义sbit c_0 = P10; /0号 传感器管锁住赛道0 检测到黑线是 高电平 sbit c_1 = P11; /1号 传感器管锁住赛道1sbi
2、t c_2 = P12; /2号 传感器管锁住赛道2sbit c_4 = P16; /新加1 传感器管检测 出库 与停车标志线sbit c_5 = P17; /新加2 传感器管检测 入库 标志线sbit d_0 = P13; /3号 传感器管sbit d_1 = P14; /4号 传感器管sbit d_2 = P15; /5号 传感器管sbit d_3 = P20; /6号 传感器sbit stop =P21; / 停车 标志传感器sbit h_0 = P22; /会车检测传感器 1sbit h_1 = P23; /会车检测传感器 2sbit s_0 = P30; / 按键 0sbit s_1
3、 = P31; / 按键 1sbit s_2 = P34; / 按键 2sbit s_3 = P35; / 按键 3sbit s_4 = P36; / 按键 4sbit s_5 = P37; / 按键 5sbit led0= P00; /工作指示灯 0sbit led1= P01; /工作指示灯 0sbit led2= P02; /工作指示灯 0sbit led3= P03; /工作指示灯 0sbit led4= P04; /工作指示灯 0sbit led5= P05; /工作指示灯 0sbit led6= P06; /工作指示灯 0sbit led7= P07; /工作指示灯 0/-小车现场
4、标志位-/uchar flag_zhidao; /小车在直到 uchar flag_wandao; /小车在弯道 uchar flag_wandao_0; /左拐 标志位uchar flag_wandao_0_hz ; /左拐 回正 标志位uchar flag_wandao_hou_0; /后传感器 检测到 左拐 标志位 uchar flag_wandao_1; /右拐 标志位uchar flag_wandao_1_hz ; /右拐 回正 标志位uchar flag_wandao_hou_1; /后传感器 检测到 右拐 标志位uchar flag_jiance_qian; /前面传感器 检测u
5、char flag_jiance_hou; /后面传感器 检测uchar flag_ruku; /入库标志线 检测uchar flag_ruku_jin; /小车 入库 控制 标志位uchar flag_chuku; /出库标志线 检测uchar flag_chuku_chu; /小车 出库 控制 标志位uchar flag_yici;uchar flag_dengdai; /等待 地方车 通过uchar flag_fache; /发车标志位uchar flag_tingche; /停车标志位void daoche_chuanganqichuli(); /倒车传感器处理 /-倒车标志位-/uc
6、har flag_huiche;/会车标志位uchar flag_huiche_hou;/会车 后 标志位uchar flag_daoche_jiance_qian; /会车后 检测 传感器 钱 相对于 小车的行驶方向uchar flag_daoche_jiance_hou;uchar flag_huiche_dengdai; /等待 会车 标志位uchar flag_daoche ; /倒车 标志位uchar flag_daoche_dengdai;/倒车 等待uchar flag_daoche_ruku; /倒车 入库uchar flag_daoche_zhunbei_ruku; /倒车
7、准备 入库uchar flag_daoche_ruku_jin; /倒车 进库控制标志位uchar flag_daoche_ruku_dengdai; /倒车 入库 等待uchar flag_daoche_chuku ;/倒车 出库 uchar flag_daoche_zhidao; /倒车 直走 标志位uchar flag_daoche_wandao; /倒车 拐弯 标志位uchar flag_daoche_wandao_0; /倒车 左拐 标志位uchar flag_daoche_wandao_1; /倒车 右拐 标志位 /uchar flag_moshi1; /选择模式1 工作标志位uc
8、har flag_moshi2; /选择模式2 工作标志位uchar flag_moshi3; /选择模式3 工作标志位uchar flag_moshi4; /-函数定义-/void chuanganqi_chuli(); /传感器扫描void led_xianshi(); /led显示void fangan_1(); /方案 1,小车独立行走void fangan_2_shujucaiji(); /方案2 红外管采集void fangan_2_biaozhichuli(); /方案2 小车采集信息 控制处理void fangan_2(); /方案 2,小车入库行走void daoche_ch
9、uanganqichuli(); /倒车传感器处理void daoche_biaozhiwei_chuli_b();/ 传感器 标志 void fangan_3_B(); / 方案 3 ,小车 会车 控制void key_moshi(); /按键 模式选择/*/* 定时器0 初始化 */*/void time0_init()TMOD |= 0x01;TH0=(65535-50000)/256;TL0=(65535-50000)%256;EA=1;ET0=1;/TR0=1;/*/* 主程序 main */*/void main()P3=0xff;P2=0XFF;P1=0XFF;key_moshi
10、(); /模式 选择time0_init(); /启动 定时器 0time1_init(); /定时器1初始化 PWM模块dianji_zuo(1,40); / 直走dianji_you(1,40);flag_jiance_qian = 1; /启动 前面传感器 检测黑线flag_jiance_hou = 0; /关闭 后面传感器 检测黑线while(1)if(flag_moshi1=1)fangan_1(); /方案1 小车独立行走 不入库if(flag_moshi2=1)fangan_2(); /A B 同时行走 带入库程序 采用延时12sif(flag_moshi3=1)fangan_3
11、_B();/*/* 外部 中断 0 */*/void time0() interrupt 1/TH0=(65535-50000)/256;/TL0=(65535-50000)%256;/*/* 定时器中断0 */*/void time0() interrupt 1TH0=(65535-50000)/256;TL0=(65535-50000)%256;if(flag_fache=1)fache_yanshi_jishiqi+;if(fache_yanshi_jishiqi=40) /延时2s 发车TR0=0;/*/* 定时器中断1 */*/void time1() interrupt 3TH1=
12、(65535-500)/256;TL1=(65535-500)%256;pwm_init();/*/* 传感器取值 判断 */*/void chuanganqi_chuli()if(flag_jiance_qian=1) /启动 前 传感器 检测if(c_4=0& c_0=0 & c_1=1 & c_2=0 &c_5=0)/ 0 010 0flag_zhidao=1;/直道上 标志位flag_wandao=0;/弯道 标志位都为0flag_wandao_0=0;flag_wandao_1=0;flag_wandao_hou_0= 0; /后传感器检测到拐弯标志 flag_wandao_hou_
13、1= 0;flag_ruku_jin = 0; /车子入库标志位flag_chuku_chu = 0; /车子入库标志位if(c_4=0 & c_0=0 & c_1=0 & c_2=1 & c_5=0)/0 001 0flag_zhidao = 0;/弯道上flag_wandao=1;/弯道 标志位都为1flag_wandao_0=0; flag_wandao_1=1; /需要 右拐flag_wandao_hou_0= 0; /后传感器检测到拐弯标志 flag_wandao_hou_1= 0;flag_ruku_jin = 0; /车子入库标志位flag_chuku_chu = 0; /车子出
14、库标志位if(c_4=0 &c_0=1 & c_1=0 & c_2=0& c_5=0) / 1 0 0flag_zhidao = 0;/直道上flag_wandao=1;/弯道 标志位都为1flag_wandao_0=1; /需要 左拐flag_wandao_1=0;flag_wandao_hou_0= 0; /后传感器检测到拐弯标志 flag_wandao_hou_1= 0;flag_ruku_jin = 0; /车子入库标志位flag_chuku_chu = 0; /车子入库标志位if(c_4=0 & c_2=1 & c_5=1)&flag_ruku=0 ) /|(c_0=1 & c_1=
15、1 & c_2=1)flag_ruku=1; /入库标志线/flag_zhidao = 0;/弯道上/flag_wandao=0;/弯道 标志位都为1flag_wandao_0=0; /需要 左拐flag_wandao_1=0;flag_ruku_jin = 0; /车子入库标志位flag_chuku_chu = 0; /车子入库标志位flag_jiance_qian = 0;flag_jiance_hou = 1;if(c_2=1|c_5=1)&flag_chuku=1)flag_zhidao = 0;/弯道上flag_wandao=1;/弯道 标志位flag_wandao_0=1; /需要
16、 左拐flag_wandao_1=0;flag_wandao_hou_0= 0; /后传感器检测到拐弯标志 flag_wandao_hou_1= 0;flag_ruku_jin = 0; /车子入库标志位flag_chuku_chu = 0; /车子入库标志位if(flag_jiance_hou = 1)if(d_0=0 & d_1=1 & d_2=0 & d_3=0) / 后 010 0 直走flag_zhidao = 1;/直到上 flag_wandao = 0;/弯道 标志位都为0flag_wandao_0=0; /0flag_wandao_1=0;flag_wandao_hou_0=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能 小车 程序 51

链接地址:https://www.31ppt.com/p-2390875.html