毕业设计—基于自动寻迹的智能公交车系统.doc_第1页
毕业设计—基于自动寻迹的智能公交车系统.doc_第2页
毕业设计—基于自动寻迹的智能公交车系统.doc_第3页
毕业设计—基于自动寻迹的智能公交车系统.doc_第4页
毕业设计—基于自动寻迹的智能公交车系统.doc_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于自动寻迹的智能公交车系统 摘要:智能公交车系统,包括一台能沿着黑色引导线自主行驶的公交车和两个电子公交站。电子公交站具有数据输入和显示功能,能在电子公交站上输入站台号以及本站与起始站间的距离。公交车行驶到离站点 100cm10cm 处时(以公交站台标识线为基准),应提前发出下车提示声 5s 或语音提示并报站名。能通过无线传输,公交站台上能实时显示驶向本站公交车的当前车速、到站时间及两者的距离。关键字: 智能系统;自动寻迹。Abstract:Intelligent bus system, including a can drive along the black guide line independent bus and two electronic bus station. Electronic bus station has data input and display function, can in electronic bus website input platform number and site and the distance between QiShiZhan. The bus runs until 10cm from site to place (plus or minus 100cm at present with bus station logo line basis) shall be issued in advance and get off hint sound 5s or voice prompt and stops name. Can pass the wireless transmission, bus on the platform to this site can real-time display the current speed, bus station time and both distance. Keyword:Intelligent system, automatic tracing 1总体设计方案该系统以AT89S52单片机为控制器,包含语音模块、无线传输模块、控制器模块、轨迹探测模块、显示模块、输入模块等部分。通过黑白线探测器来识运动轨迹,并通过计算码盘的运动来计算运动的距离和计算小车的运动速度。在站台设计上使用nokia5110作为现实屏幕,可以现实当前的车速以及到站时间等。公交车与站台通过Nrf24l01传输信息。控制器模块站台检测模块运算模块电机驱动模块信息传输模块语音模块轨迹探测模块运动距离检测控制模块发送模块键盘输入模块图11.1控制器模块方案一:选用凌阳公司的SPCE061A单片机。SPCE061A单片机是16位的处理器,单片机运算能力强,而且SPCE061A自带语音模块,便于实现语音的添加,但该单片机的应用适用于范围较小,在资源共享上不是非常充足。方案二:采用现在比较通用的51系列单片机。51系列单片机的发展已经有比较长的时间,应用比较广泛,各种技术都比较成熟,综合考虑51单片机的特性及价格,故本系统采用方案二,选用EXP-89S52平台作为整个作品的核心控制。电路如图1图2图21.2语音模块方案一:使用bmp5008语音芯片,但bmp5008的稳定性较差,不能够准确的完成语音报警的任务。方案二:使用Isd1720语音芯片。能够提高优质的放音,并且有独立按键和单片机控制两种控制方式,操作更加方便。故选择方案二。如图2:图31.3无线传输模块方案一: Nrf905模块。使用SPI接口与微控制器通信,配置非常方便,其功耗非常低,传输距离远。方案二:Nrf24l01无线模块。本设计中,信息传输方面要求不高,且Nrf24l01模块在满足传输要求的情况下,在性价比上夜比较符合要求,故选择方案二。如图3:图41.4信息显示模块方案一:采用12864等液晶屏来显示站牌的信息,时间的显示,但是12864显示过于死板,显示汉字字符显示不太清楚,显示的信息量还有显示模式太少而不适合做站牌信息显示。 方案二:Nokia5110液晶显示屏。该显示屏能够显示汉字,显示的信息量过大,在性价比上优于12864液晶屏。故选择方案二。如图五:图51.5轨迹检测模块使用终端查询的方法,即在发生中断的时刻,查询发生终端的引脚,并根据IO口的输入来做出相应的判断。如图6:图62程序设计2.1总体设计开始输入站台信息寻找轨迹程序初始化是否偏离是否到站语音提示2.2轨迹查询开始调整产生中断处理器读取IO口利用多个中断事件应用一个中断源,并查询产生中断的IO口的方法,判断运动轨迹的的方向及调整的角度。2.3站台控制开始显示无线接收信息输入站台信号息计算时间我们将无线接收的信号,通过车速和时间计算,得到距离的长短,在显示屏上显示站台号时间距离等提示的信息,到达站牌达到报站牌的功能。2.4显示程序我们采用了Nokia5110屏作为显示模块,显示当前的站台号、时间以及距离。清屏显示信息清屏处理器读取信息GRAM初始化开始3功能简介 1.电子公交站具有数据输入和显示功能,能在电子公交站上输入站台号以及本站与起始站间的距离。 2.公交车从起始站点 A 出发,沿着黑色引导线,经站点前下车提示、停靠动作后,自动驶到终点站 C,行驶过程中不允许驶出公交车道; 3.公交车行驶到离站点 100cm10cm 处时(以公交站台标识线为基准),应提前发出下车提示声 5s 或语音提示并报站名; 4.公交车驶入站台停靠时,其车身中心标识线与站台停靠标识线间误差应不超过 10cm,站台停靠时间为 5s; 5.通过无线传输,公交站台上能实时显示驶向本站公交车的当前车速、到站时间)及两者的距离。4特色与创新1.利用多个中断使用一个中断源并查询IO口的方法,使公交车能及时的根据其轨迹而做出相应的判断。2.能够实时的输入站台信息,并根据输入的信息做出相应的语音提示。3.在终点站能够自动返回并能够停站。5性能指标性能指标可测范围2CM-5CM分辨线宽1CM-5CM工作电压电机12V控制系统5V功率5W6结论经过了多日的努力,我们在本设计中基本实现了上述要求,并在有些功能方面提出了改进,使系统设计更加完善。在该设计中我们使用了AT89S52作为主控器,但由于时间及器材条件的限制,本设计也存在不足,例如,测量范围不能达到更高的要求,测量精度也存在很大的提升空间。我们会在以后的学习中不断地弥补这些不足,完善测量系统设计。7参考文献1 陈尚松,雷加,郭庆.电子测量与仪器M .北京:电子工业出版社,2005.2 张培仁.基于C语言编程 MCS251 单片机原理与应用M.北京:清华出版社, 2003.3 顾正华,顾亚平,陈光.基于 VXI总线数字多用表模块硬件设计J .中国测试技术,2006,32 (4) :87289 ,143.4 陈江华.一种实用的电容、电感和电阻自动测量仪J .计量与测试技术,2002. 5 黄智伟.大学生电子设计竞赛训练教程.电子工业出版社,2005年,第2版.6 全国大学生电子设计竞赛组委会.第五届全国大学生电子设计竞赛获奖作品选编(2001).北京:北京理工大学出版社,2003.7 康华光.电子技术基础(数字部分).高等教育出版社,2006.附录源程序#include #include api.h#include nrf24l01.h#define uchar unsigned char#define uint unsigned intsbit l0=P30;sbit l1=P31;sbit r0=P34;sbit r1=P35;sbit f0=P36;sbit f1=P37;sbit f2=P06;sbit f3=P07;sbit bf=P25;sbit ch=P26;sbit kg= P27;sbit sce = P20; /片选sbit res = P21; /res=0时,LCD复位 sbit dc = P22; /dc=0_指令,DC=1_数据 sbit sdin = P23; /数据信号 sbit sclk = P24; /时钟信号uchar sc,count,fc,vv,ff1,ff2,key,flag,zp;uint ss,js,jl,zh,cc,jl1;/延时程序uchar code hz=/*- 文字: 车 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0x02,0x22,0x32,0x2E,0x23,0xFA,0x22,0x22,0x22,0x22,0x02,0x00,0x01,0x01,0x01,0x01,0x01,0x07,0x01,0x01,0x01,0x01,0x01,0x00,/*- 文字: 速 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0x11,0xF6,0x00,0x02,0x3A,0xAA,0xFF,0x6A,0xAA,0x3A,0x02,0x00,0x06,0x01,0x02,0x05,0x05,0x04,0x07,0x04,0x04,0x05,0x04,0x00,/*- 文字: : -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0x00,0x00,0x00,0x00,0x8C,0x8C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: 行 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0x48,0x24,0xF3,0x08,0x09,0x09,0x09,0x09,0xF9,0x09,0x08,0x00,0x00,0x00,0x07,0x00,0x00,0x04,0x04,0x04,0x07,0x00,0x00,0x00,/*- 文字: 程 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0x8A,0x6A,0xFF,0x49,0x20,0xAF,0xA9,0xE9,0xA9,0xAF,0x20,0x00,0x01,0x00,0x07,0x00,0x04,0x04,0x04,0x07,0x04,0x04,0x04,0x00,/*- 文字: : -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0x00,0x00,0x00,0x00,0x8C,0x8C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: 一 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x30,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: 路 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0xDF,0x09,0xF9,0x4F,0x88,0x44,0xEB,0x52,0x6A,0xC6,0x40,0x00,0x07,0x02,0x03,0x02,0x02,0x00,0x07,0x04,0x04,0x07,0x00,0x00,/*- 文字: 公 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0x20,0x10,0x08,0x07,0xC0,0x30,0x83,0x0C,0x10,0x20,0x20,0x00,0x00,0x04,0x06,0x05,0x04,0x04,0x02,0x03,0x06,0x00,0x00,0x00,/*- 文字: 交 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0x22,0x12,0x0A,0x76,0x82,0x03,0x82,0x76,0x0A,0x12,0x02,0x00,0x04,0x04,0x04,0x02,0x02,0x01,0x02,0x02,0x04,0x04,0x04,0x00,/*- 文字: 车 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=12x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=12x16 -*/0x02,0x22,0x32,0x2E,0x23,0xFA,0x22,0x22,0x22,0x22,0x02,0x00,0x01,0x01,0x01,0x01,0x01,0x07,0x01,0x01,0x01,0x01,0x01,0x00,;uchar code str=/*- 文字: 0 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0xF8,0x04,0x04,0x04,0xF8,0x00,0x01,0x02,0x02,0x02,0x01,0x00,/*- 文字: 1 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x00,0x08,0xFC,0x00,0x00,0x00,0x00,0x02,0x03,0x02,0x00,0x00,/*- 文字: 2 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x18,0x84,0x44,0x24,0x18,0x00,0x03,0x02,0x02,0x02,0x02,0x00,/*- 文字: 3 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x08,0x04,0x24,0x24,0xD8,0x00,0x01,0x02,0x02,0x02,0x01,0x00,/*- 文字: 4 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x40,0xB0,0x88,0xFC,0x80,0x00,0x00,0x00,0x00,0x03,0x02,0x00,/*- 文字: 5 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x3C,0x24,0x24,0x24,0xC4,0x00,0x01,0x02,0x02,0x02,0x01,0x00,/*- 文字: 6 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0xF8,0x24,0x24,0x2C,0xC0,0x00,0x01,0x02,0x02,0x02,0x01,0x00,/*- 文字: 7 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x0C,0x04,0xE4,0x1C,0x04,0x00,0x00,0x00,0x03,0x00,0x00,0x00,/*- 文字: 8 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0xD8,0x24,0x24,0x24,0xD8,0x00,0x01,0x02,0x02,0x02,0x01,0x00,/*- 文字: 9 -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x38,0x44,0x44,0x44,0xF8,0x00,0x00,0x03,0x02,0x02,0x01,0x00,;uchar code dw=/*- 文字: c -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x00,0xC0,0x20,0x20,0x60,0x00,0x00,0x01,0x02,0x02,0x02,0x00,/*- 文字: m -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0xE0,0x20,0xE0,0x20,0xC0,0x00,0x03,0x00,0x03,0x00,0x03,0x00,/*- 文字: / -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x00,0x80,0x60,0x1C,0x02,0x00,0x04,0x03,0x00,0x00,0x00,0x00,/*- 文字: s -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x00,0x60,0xA0,0xA0,0x20,0x00,0x00,0x02,0x02,0x02,0x03,0x00,/*- 文字: c -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0x00,0xC0,0x20,0x20,0x60,0x00,0x00,0x01,0x02,0x02,0x02,0x00,/*- 文字: m -*/*- Trebuchet MS9; 此字体下对应的点阵为:宽x高=6x12 -*/*- 高度不是8的倍数,现调整为:宽度x高度=6x16 -*/0xE0,0x20,0xE0,0x20,0xC0,0x00,0x03,0x00,0x03,0x00,0x03,0x00,;void delay_ms1() uchar z; for(z=0;z200;z+); void delay_s() uint x,y; for(x=0;x200;x+) for(y=0;y5000;y+);void delay_s1() uint x,y; for(x=0;x100;x+) for(y=0;y5000;y+);void lf() l0=1; l1=0; void ls() l0=0; l1=0; void rf() r0=1; r1=0; void rs() r0=0; r1=0;void rb() r0=0; r1=1; / 前进执行程序void forward() lf(); rf();void init_inte()/ EA=1; /开总中断 EX1=1; /开外部中断1 EX0=1; /开外部中断0 IT1=0; /外部中断边沿触发,下降沿触发 IT0=1; /外部中断0边沿触发,下降沿触发 IP=0x01;void init_time() TMOD=0x01;TH0=(65535-1)/256; TL0=(65535-1)%256;ET0=1;TR0=1; EA=1;void write_com(uchar com)unsigned char i;sce=0;dc=0;for(i=0;i8;i+)if(com&0x80)sdin=1;elsesdin=0;com=com1;sclk=0;sclk=1; sce=1;void write_dat(uchar dat)unsigned char i;sce=0;dc=1;for(i=0;i8;i+)if(dat&0x80)sdin=1;elsesdin=0;dat=dat1;sclk=0;sclk=1; sce=1;void set_xy(uchar x,uchar y) write_com(0x40|y); write_com(0x80|x);void init_5110()res=0;res=1;write_com(0x21); / 使用扩展命令设置LCD模式write_com(0xc8); / 设置LCD偏置电压write_com(0x06); / 温度校正write_com(0x12); / 1:48write_com(0x20); / 使用基本命令,V=0,水平寻址write_com(0x0c); / LCD正常显示模式void clear() uchar m,n; set_xy(0,0); for(m=0;m6;m+) for(n=0;n84;n+)write_dat(0x00); /void write_hz(uchar x,uchar y,uchar num)uchar i;set_xy(x,y);for(i=0; i12;i+)write_dat(hznum*24+i);set_xy(x,y+1);for(i=12; i24;i+)write_dat(hznum*24+i);void write_hzs(uchar x,uchar y,uchar num,uchar n) uchar i; for(i=0;in;i+) write_hz(x+i*12,y,num+i);void write_num(uchar x,uchar y,uchar num)uchar i;set_xy(x,y);for(i=0; i6;i+)write_dat(strnum*12+i);set_xy(x,y+1);for(i=6; i12;i+)write_dat(strnum*12+i);void write_nums(uchar x,uchar y,uint num) /* if(num10) write_num(x+12,y,num%10); else if(num100) write_num(x+6,y,num/10%10); write_num(x+12,y,num%10); else if(num1000) write_num(x,y,num/100); write_num(x+6,y,num/10%10); write_num(x+12,y,num%10); else*/ write_num(x,y,num/1000); write_num(x+6,y,num/100%10); write_num(x+12,y,num/10%10); write_num(x+18,y,num%10); void write_dw(uchar x,uchar y,uchar num) uchar i; set_xy(x,y);for(i=0; i6;i+)write_dat(dwnum*12+i);set_xy(x,y+1);for(i=6; i12;i+)write_dat(dwnum*12+i);void delay() uchar x,y; for (x=0;x50;x+) for (y=0;y4)|0xF0);if(temp=1) / p1.4 被拉低key=0;else if(temp=2) / p1.5 被拉低key=4;else if(temp=4) / p1.6 被拉低key=8;else if(temp=8) / p1.7 被拉低key=12; P1=0x0F; /低四位输入 列为高电平 行为低电平 delay();temp=P1; /读P1口 temp=temp&0x0F; temp=(temp|0xF0); if(temp=1) / p1.1 被拉低 key=key+0; else if(temp=2) / p1.2 被拉低 key=key+1; else if(temp=4)/ p1.3 被拉低 key=key+2; else key=key+3; P1=0x0F;while(P1!=0x0f); /*/* */*判断键是否按下 */* */*/uchar keydown(void) P1=0xF0;if(P1!=0xF0) /判断按键是否按下 如果按钮按下 会拉低P1其中的一个端口keyscan(); return 1;else return 0;void st()write_hzs(6,0,6,5);write_hzs(0,2,0,3); write_dw(60,2,0);write_dw(66,2,1);write_dw(72,2,2);write_dw(78,2,3);write_hzs(0,4,3,3);write_dw(60,4,4);write_dw(66,4,5);void n1() ls(); rs(); delay_s(); forward();void set_jl()switch( key )/*case 7:write_num(30+6*(zp),4,0);zp+;jl=jl*10+0;break;case 0:write_num(30+6*(zp),4,1);zp+;jl=jl*10+1;break;case 4:write_num(30+6*(zp),4,2);zp+;jl=jl*10+2;break;case 8:write_num(30+6*(zp),4,3);zp+;jl=jl*10+2;break;case 1:write_num(30+6*(zp),4,4);zp+;jl=jl*10+3;break;case 5:write_num(30+6*(zp),4,5);zp+;jl=jl*10+5;break;case 9:write_num(30+6*(zp),4,6);zp+;jl=jl*10+6;break;case 2:write_num(30+6*(zp),4,7);zp+;jl=jl*10+7;break;case 6:write_num(30+6*(zp),4,8);zp+;jl=jl*10+8;break;case 10:write_num(30+6*(zp),4,9);zp+;jl=jl*10+9;break; */case 7:jl=jl*10+0;zp+;break;case 0:jl=jl*10+1;zp+;break;case 4:jl=jl*10+2;zp+;break;case 8:jl=jl*10+3;zp+;break;case 1:jl=jl*10+4;zp+;break;case 5:jl=jl*10+5;zp+;break;case 9:jl=jl*10+6;zp+;break;case 2:jl=jl*10+7;zp+;break;case 6:jl=jl*10+8;zp+;break;case 10:jl=jl*10+9;zp+;break;if(zp=4)ff2=0;zp=0;if(jl9999)jl=0;if(ff1=1)zh=jl;write_nums(30,4,zh);if(ff2=1)jl1=jl;write_nums(30,4,jl1);write_dw(55,4,4);write_dw(61,4,5);/*void set_zh()uchar zp0;switch( key )*/*case 7:write_num(40+6*(zp0),0,0);zh=zh*10+0;zp0+;break;case 0:write_num(40+6*(zp0),0,1);zh=zh*10+1;zp0+;break;case 4:write_num(40+6*(zp0),0,2);zh=zh*10+2;zp0+;break;case 8:write_num(40+6*(zp0),0,3);zh=zh*10+3;zp0+;break;case 1:write_num(40+6*(zp0),0,4);zh=zh*10+4;zp0+;break;case 5:write_num(40+6*(zp0),0,5);zh=zh*10+5;zp0+;break;case 9:write_num(40+6*(zp0),0,6);zh=zh*10+6;zp0+;break;case 2:write_num(40+6*(zp0),0,7);zh=zh*10+7;zp0+;break;case 6:write_num(40+6*(zp0),0,8);zh=zh*10+8;zp0+;break;case 10:write_num(40+6*(zp0),0,9);zh=zh*10+9;zp0+;break; */*case 7:zh=zh*10+0;zp0+;break;case 0:zh=zh*10+1;zp0+;break;case 4:zh=zh*10+2;zp0+;break;case 8:zh=zh*10+3;zp0+;break;case 1:zh=zh*10+4;zp0+;break;case 5:zh=zh*10+5;zp0+;break;case 9:zh=zh*10+6;zp0+;break;case 2:zh=zh*10+7;zp0+;break;case 6:zh=zh*10+8;zp0+;break;case 10:zh=zh*10+9;zp0+;break;if(zp0=4)ff1=0;zp0=0;if(zh9999)zh=0;write_nums(30,4,zh);write_dw(55,4,4);write_dw(61,4,5);*/void main()js=1;bf=0;delay_ms(100);bf=1;l1:ls();rs();init_inte();init_time();NRF24L01_Config();delay_ms(100);NRF24L01_TxPacket(tx_buf);delay_ms(100);init_5110();clear();st();while(1)if(kg=0)EA=1;forward();tab0=ss/256;tab1=ss%256;tab2=vv;CE=1;NRF24L01_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论