




已阅读5页,还剩28页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机的智能吸尘器龙岩学院毕业设计 题目: 基于单片机的智能吸尘器 专业: 电子信息工程 学号: 2014041836 作者: 张森林 指导教师(职称):任志山 副教授 二一六年六月一日基于单片机的智能吸尘器【摘要】随着人们生活节奏加快和社会不断发展和进步,加上现在人口急剧膨胀人口老年后越来月严重,于是为了从处理家务繁琐的事情中解脱出来,成为越来越迫切的需求。本文介绍智能循迹吸尘器,可以初步实现无人情况下,利用红外感应原理,以单片机为核心,电机驱动、传感器等按照预先设定的模式在无人情况下自动完成任务,并且自带PM2.5检测系统可以为家居环境进行检测十分人性化,有效的的提高了生活质量,并且吸尘分为二档,对一些路面进行有效清理吸尘。【关键词】:单片机 电机驱动 红外感应Based on single chip microcomputer intelligent vacuum cleaner【Abstract】With the accelerated pace of life and the continuous development of society and progress, and now rapid population expansion of the elderly population after more and more serious, so to extricate from the tedious chores things become more and more urgent demand.Is introduced in this paper intelligent tracking cleaner, can initially achieve unmanned, in accordance with the requirements of tracking task of tracking route around the cleaning. He is self-contained power supply, using the principle of infrared induction, automatic identification and selection of routes, including the use of a microcontroller, motor drive, sensors, etc. according to the preset mode in no case automatically completes the task, and comes with PM2.5 detection system for the home environment were detected very humane, effectively improves the quality of life, and vacuum divided into second gear, effective clean dust on the pavement.【Key words】: single chip microcomputer motor drive infrared sensor目 录第一章绪论41.1家用智能吸尘器概述41.2智能吸尘器的研究目的和意义51.3研究内容5第二章智能吸尘器总体设计方案62.1整体设计方案62.2系统基本组成62.3整体功能实现的过程6第三章硬件电路的设计83.1单片机电路设计83.2晶振电路83.3红外循迹循迹模块:93.4 LM393模块:103.5 PM2.5模块113.6 ADC0832模块:123.7L293D电机驱动模块:133.8 吸尘模块:14第四章系统软件设计154.1软件设计流程15第五章系统总体调试165.1硬件测试16结论18致 谢19参考文献20附录一21附录二32附录三33第一章绪论1.1家用智能吸尘器概述随着现代化进程不断加快,机器人被运用到各个行业不管是民用还是工用都起到不可替代作用甚至于军工产品都有它的身影。传统的家用吸尘器需要人为实时操作,并且受制于电源插座位置和电源线长短的影响有很多弊端于是就是有了家用智能吸尘器诞生。家用智能吸尘器被称为Household intelligent vacuum cleaner 简称:HIVC 其实现功能的基本是智能循迹小车可追溯到上世纪五六十年代研发出来的新型智能搬运机器人,以智能循迹为前提加上吸尘功能的高端家用设备,而且在发达国家早已采用机器人对工厂、医院、学校、车站一些开阔地面进行智能清洁,日本的东日本铁路公司和shinko电气公司和Howa工业有限公司合作研制出了用于在一些例如车站、机场开阔地面的清洁机器人,有效节约成本又非常高效完成任务。松下公司的自动清扫机器人可以清扫砖地、木质地板、地毯,在美国的Denning公司和windsor公司合作研制出高端的具有高精度激光导航系统的吸尘机器人它是采用超声波传感器测距,这些公司具有相当的设计经验,只要把机器人放在第地面上就可以自动开始工作不会出现“碰壁”的现象,用简单的几个按键实现操作我国在浙江大学是比较早开始这一方面的研究,研究是在九十年代末并在两年后成功设计出一个有着自主吸尘功能的吸尘器并且和其他研究机构一起研究后在2003的时候进行了大幅度改良在性能上有了相当提高,采用局部遍历和方法随机相结合的算法进行清洁路径的选择达到高效率的清扫目的,在使用到一定时间后报警提示进行充电,由于是可循迹功能的吸尘器可以返回到起始地进行充电保证下次清洁任务顺利完成。其实在美国1869年有一家公司就生产出了电动吸尘器“龙卷风”也就是在那个时候有了吸尘器的一个模型奠定了现代吸尘器的概念和基础。在1900年的时候英国工程师对这个吸尘器模型进行改进,使用了一个笨重的吸气装置并且安装在马车上使用。吸尘器一般分为:立式吸尘器、便携可提式吸尘器、横卧式吸尘器、圆桶式吸尘器。立式吸尘器一般在美国、欧洲比较常见,这跟美国欧洲的建筑风格、室内布局和人文价值观有关系在清洁墙面、清洁窗帘、清洁床单、清洁家庭器具方面具有很大的优势。便携可提式吸尘器一般在我国的小岛台湾,还有我过大陆部分地区适用,体积小、占地面积少、使用方便、而且可以对键盘、汽车、电器等等进行清洁具有非常大的优势,但是功率会比较小,吸力不够。圆桶式吸尘器一般是作为专业的清洁公司使用,他们清洁面积大,使用频率也大、功率大、容量也大,方便专业的清洁公司操作。横卧式吸尘器一般在东南亚地区使用,由于东南亚国家雨水多,这种型号适应雨水多的环境,外型小巧玲珑,存放方便也是使用时间长的吸尘器,在东南亚受到广泛好评。1.2智能吸尘器的研究目的和意义我国的市场是具有非常旺盛的生命力,在社会的发展如此迅速,人们生活的水平有了很大的提高达到了小康水平,人们就很渴望从繁琐的生活中解脱出来同时节约时间成本和人工成本,体积小操作简单易懂尤其是在有老人的家庭里方便老人的使用具有十分广阔的前景,截止到现在我国也有很多相关的研究工作特别是在机器人的移动方面和机器人的控制方面有很多的科研工作者还有科学家正在这方面不懈的努力取得了很大的成绩一些国外的学者和科学家十分愿意来中国交流学习共同提高,所以为智能吸尘机器人的研究开发提供了非常好的技术保障,因此智能吸尘机器人以价格、成本都相对较低的姿态进入市场将会具有非常打的潜力,在未来也是具有非常大的潜力,社会的发展是朝着高科技高技术和智能化的方向前进,人工劳作会浪费和占用时间降低时间的利用率非常不利于人类生活,不利于提高生活质量。这是成为家庭小家电使用的潮流,几乎成为每个家庭必备的家电,这被称为智慧型小家电并且广泛受到老百姓的欢迎,对一些家庭清洁死角是非常头疼的事情,但是采用智能吸尘器这个问题可以得到很好的解决,体积小,轻便可以很容易的进入死角进行清洁,这样节约大量的时间同时又起到清洁的效果解决了很多家庭的苦恼,体现科技丰富生活并且应用于生活的概念极大提高品质和生活的乐趣。同时智能吸尘器的应用前景十分广阔,在火车站、在汽车站、在大型超市、在一些大型的公共场所,由于场地面积大如果采用人工清洁的话会消耗大量的人力物力财力,同时清洁的效果没有预期的高,如果采用智能吸尘器进行清洁则或节约大量的人力物力和财力,同时释放大量的劳动力,不会让资源二次浪费高效环保舒适,而且不会存在人事纠纷劳动纠纷,机器的利用率高只需要对机器进行保养定时充电按时保养一般情况下使用都不会有太大的麻烦,随时调用机动性和工作效率是人工劳作无法比拟。这个智能吸尘器在一些危险的地方,比如:瘟疫流行地区、地震灾区、火灾现场等等,一些人类难以到达的地方,就可以发挥巨大作用,在瘟疫流行的地区容易感染病毒,使用它就可以避免不必要的人员感染增加不必要的麻烦,减少社会压力减少家庭成员的痛苦,而且可以有效增加清洁效率,它可以做到随时循环使用在任何时间任何地点。1.3研究内容总体的方案是设计一个可循迹的智能小车在一个规定的轨道内做圆周运动,轨道采用黑色跑道加上白色地面模拟路线,完成指定路线的循迹从而实现基本运动的功能,在此基础上用风扇模拟吸尘器就沿路进行吸尘并且采用两档控制风速来模拟吸尘器的吸尘的吸力,因为在现实生活中有些区域需要加大吸尘器的吸力从而达到清洁的目的,在此基础之上又加装PM2.5空气检测装置与之配套,可以实时监查空气质量同时也可以查看吸尘效果,对于一些还存有PM2.5值偏高的区域可用speed+功能加大吸力,达到清洁的目的,这种家用智能吸尘器与传统的吸尘器相比优势明显同时体积也小便于存放,操作简单明了功能全面,性价比高。让这种高科技进入生活,可以大幅度提高生活的质量。第二章智能吸尘器的总体设计方案2.1整体设计方案智能吸尘器系统采用简单实用的设计方案,在小车的前端设置两个高发射红外光二极管和有高灵敏光电晶体二极管组成的传感器循迹模块配合PM2.5空气质量检测和吸尘功能统一实现,重点突出可循迹可吸尘,PM2.5是对空气质量也就是吸尘效率的一个参考,对于循迹模块是采用判断黑线路径,经过STC89c51通过I/O口控制L293D驱动模块改变两个直流电机的工作状态,左右轮差速实现的转向,最后实现循迹吸尘,吸尘是调节档位一共2档。2.2系统基本组成智能小车系统框图如下: 单 片 机路径直流电机驱动模块红外光模块吸尘模块PM2.5模块A/D转换图2-2 智能吸尘小车结构图2.3整体功能实现的过程通过小车循迹实现的吸尘和PM2.5值探测的功能,首先使用黑线作为小车的跟踪目标,在小车的前端有2组红外二极管,分别有接受和发射功能,它能追踪黑线的路径,通过LM393电压比较器把数值传送到单片机,单片机处理信息后,将控制命令输出到驱动模块,控制电机转速,保证小车跟进路线,其次吸尘功能的实现是使用按键控制风扇的转速模拟吸尘器,按键有2档一个是speed+和speed-可以在小车一边循迹一边吸尘达到清洁的目的,在PM2.5检测方面,通过感应大气中的灰尘浓度检测出电压值通过ADC0832模数转换经过单片机并在液晶显示屏上显示出来。其中还需要说明的是:采用STC89C51单片机为主控芯片,在小车的电机中内部有减速齿轮,因此不考虑采用调速这个方法,而采用L293D控制直流电机,不用步进电机。它是用TTL电平控制的,通过改变芯片的控制端电平,就可以进行电机正反转控制,这样操作方便、稳定、快捷等优点。还有用红外线采集数据,是因为当光线照到白线上是光线反射强烈,当照到黑线时光线的反射减弱,这样单片机就和循迹模块组成一个带有反馈信号的系统。第三章硬件电路的设计3.1单片机电路设计一个单片机的电路应用系统需要包涵两部分:系统扩展部分和系统配置,系统扩展就是单片机内部的ROM、RAM、I/O、定时计数器、中断系统等不满足应用要求的情况下在片外扩展,所以需要选择好相应的电路做设计;系统配置就是要按照系统功能要求配置外围的设备,比如:键盘、A/D、D/A等等。STC89C52单片机基本说明:可以看作是8051单片机的增强版;32个通用的I/O口,工作的频率范围是在0-40MHZ也就是8051单片机的0-80MHZ,有3个16位定时计数器也就是说定时器分别有T0、T1、T2。外部有4路中断,具有看门狗功能,可以使用异步串口UART和用软件实现多个UART。3.2晶振电路在晶振电路方面,采用的是12MHZ2个22pF的电容,所以一个机器周期是1s是为系统提供基本的时钟信号,但是2个电容是起到并联谐振的作用,如果没有电容,震荡电路会由于没有回路而停振,电路就不能工作。图3-1 晶振的电路图在复位电路方面:复位电路就是控制CPU的复位状态,不是一上电或复位完就开始工作,起到禁止CPU发出错误指令,执行错误操作,同时也是提高了CPU的电磁兼容。在系统稳定正常的工作状态时,如果振荡器也稳定,RST引脚上有个高电平持续2个机器周期(24个震荡周期)以上CPU复位如下3-2所示:图3-2复位按钮电路图3.3红外循迹模块:主要是采用了脉冲反射的红外发射接收器作为的循迹传感器,带有交流信号,可以有效减少外接的干扰,其信号的采集部分是由它完成黑线的识别产生高低电位差经过比较器后送入单片机生成指令代码来控制两个电机的工作状态,完成循迹任务,其实就是亮和暗的反差造成的。工作原理:当小车处在循迹模式的时候,循迹路线是一条黑线,是无法反射红外光的,接受管接收不到红外光信号,通过红外光对比来校正路线。图表如下图3-3所示:图3-3红外循迹电路图3.4 LM393模块:LM393作为电压比较器在循迹方面起着非常重要的作用,输出负载电阻可以接在应许电源电压范围内的任何电源电压上,Vcc对它的影响相对较小,是高增宽频器件工作原理:外界输入的一个电压信号量和一个参考的固定电压信号量相比较,在二者幅度接近相等的时候,会输出一个电压产生跃变,相对输出高电平或低电平。图表如下 表3-4,图3-4: 表3-4 LM393引脚端说明:引出端序号符号功能1Out1输出2INA-反向输入A3INA+同向输入A4GND接地端5INB+同向输入B6INB-反向输入B7Out2输出28Vcc电源电压图3-4 LM393电路图说明:单电源:2.0V-36V电源电流消耗0.4mA输入偏置电流25nA输入失调电流+5nA输入最大失调电压+3mV使用此模块的优势:1. 具有兼容逻辑电路的特性2. 可以对其进行单电源供电3. 高精度比较器4. 可以减少温票引起的电压失调3.5 PM2.5模块:PM2.5模块是使用日本夏普公司的颗粒传感器一般用来测量0.8微米以上的颗粒,安装方便使用寿命长稳定性好。工作原理:PM2.5工作时,主要是用于感应外部颗粒物,可以探测到外部颗粒物的反射光,以模拟量的形式传送到AD转换器。图表说明如下表3-3,图3-5,实物图3-6所示: 表3-5 引脚说明图:序号符号功能1Vcc提供电压2LED_GND接地3RXD数据输入4LED_GND接地5Vout模拟电压输出6Vcc内部供电下图为PM2.5内部结构图图3-5 PM2.5内部结构框图图3-3 PM2.5电路图下图为PM2.5实物图图3-6实物图PM2.5引脚模块内部结构框图:3.6 ADC0832模块:有八位分辨率并且是双通道的A/D转换芯片兼容性相对较强可以与TTL/CMOS兼容、体积小、性价比高表3-6 ADC0832 引脚说明引出端序号符号功能1CS片选使能2CH0模拟输入通道03CH1模拟输入通道14GND接地5DI数字信号输入6D0数据信号输出7CLK输入芯片时钟8Vcc电源电压输入 图3-5 ADC0832原理图在数据采集的时候PM2.5传入数据到CH0端口,ADC0832芯片片选使能产生时钟信号之后输入通道控制字时会读取2字节的数据进行字节数据的较验传入单片机3.7L293D电机驱动模块:电机驱动模块:采用L293D芯片来驱动电机,它是H桥驱动程序,能提供双向驱动电流高达600毫安,电压从4.5V-36V,它可以驱动感性负载比如继电器、电磁阀、以及直流双极步进和马达,同时也是可以作为其他高电流电压提供负载。同时可以兼容TTL输入,其中每个输入都是推拉式驱动,诺输入为高电平启动相关联的驱动则输出处于活动状态,并在其输入端的同相。表3-6 电机驱动模块引脚说明引出端序号符号功能1EN使能21A电机转向输入引脚31Y电机驱动正极4GND接地5GND接地62Y电机驱动输入负极72A电机PWM输入脚8Vcc电机供电9EN使能103A电机转向输入引脚113Y电机驱动输入正极12GND接地13GND接地图3-6电机驱动模块3.8 吸尘模块:工作原理:此吸尘模块为电风扇模拟吸尘器,代替吸尘效果,用按键代替吸尘开关当按键按下去时为Speed-,吸尘效果为普通,当按键再次按下是为speed+吸尘效果为加强也就是风扇的风力大小,此为手动控制PNP为9012。 图3-8吸尘模块原理图图3-9吸尘模块实物图 第四章系统软件设计 4.1软件设计流程STC89c51系列的单片机可以用汇编语言和C语言来写。本系统采用C语言来写,模块化结构程序的设计,可以让系统软件便于调试和优化,C语言是面向过程的语言,它可以用在嵌入式和底层的程序开发,操作系统设计,代码运行效率高,这一点是其他语言无法比较的,这样可以更好的控制硬件,灵活和功能丰富,尤其是C语言引入指针的概念让程序运行的效率变得更加有效率,C语言的一些创新更是被其他语言所接收和借鉴比如JAVA语言、C+语言等等还有对外数据交互简单,容易编写的特点。本设计采用Keil 5软件编写,它提供了功能强大的集成开发调试工具和丰富的库函数,只要写好编译运行查看结果,如果异常的话,会有直接提示,生成代码的效率很高十分有优势。开始程序框图程序初始化对路况做出反应传感器接收数据判断按键选择命令A/D转换计算数值Speed+小车右转小车左转Speed-显示数据取消结束第五章系统总体调试5.1硬件测试根据之前画的图,焊接硬件里的各个元器件,选取万用表测量各个元器件和线路是否正常,如果出现阻值很小就是短路了,如果阻值很大就是开路了,有些地方虚焊会出现测量数值不稳定的情况,需要重新焊接。在硬件调试过程中发现,当小车的速度比较快的时候,必须把红外感应往前调,因为速度快的话由于惯性作用,即使转弯也会偏离跑道,所以必须把探头延长,有一个缓冲的过程才不会偏离跑道。在调试过程中,发现小车会偏离跑道,后来检测发现是跑道使用不规范,黑线旁边必须是白色地面否则红外光读取有误。在循迹方面:在小车的前沿装上红外探测器用于探测黑线,这是利用红外线对不同颜色产生不同的反应,有不同的反射特性,在小车行驶的过程中,红外光遇到白色地面,地面会产生漫反射这中反射被接收器接收;如果遇到黑线的话,红外线会被黑线吸收,那么安装在小车上的接收管没有收到信号,这时就会经过比较器产生高低电平,芯片根据接受的高低电平判断黑线的位置,来调整小车的路线,通常来说红外探测的距离一般不会超过15厘米,两个探头之间的距离要以黑线的距离为准,避免过大过窄,我们可以选择3-5厘米的距离为合适。这个传感器的灵敏度也是可以调节的,通过调节传感器的可调电阻改变电阻的阻值来改变灵敏度,另外说明的是放置传感器的方法有2种,第一种是放在黑线的内侧紧贴黑线的边缘,第二种是放在黑线的外边缘,距离紧靠黑线边缘,我的方案是 选择第二种方法。当小车循迹向右边偏离黑线时候,左边的传感器产生高电平,传送到单片机,然后向左边修正,反之亦然,当两个传感器都是低电平的时候,小车直行。电机驱动电路:L293D在内部有一个H桥的高压大电流全桥式驱动芯片,直接就可以驱动直流电机,在使能端不受输入信号影响下驱动芯片不动作。测试PM2.5的浓度值在没有烟尘的情况下的参数(由于背光效果,显示不是很清晰) 如下图所示:PM2.5在有烟尘的条件下参数发生变化如下所示:结论本设计主要是研究智能吸尘器循迹系统,使用了PM2.5检测,用小风扇模拟吸尘器,并且使用了循迹小车作为导向识别路径,并且对采集到的数据进行融合,所以取得了一下成果:1. 小车按照指定的黑色路线循迹运动。2. 小车上的PM2.5粉尘检测器实时收集数据辅助检测吸尘效果,同时反馈给用户作为参考数值也具有检测室内环境的参考意义。3. 吸尘器的吸尘具有档位分为speed+和speed-,使用按键输入增加吸尘效果,在一些用户无法及手的地方处理问题,安全方便。4. 保留了扩展的功能,留有各种硬件的接口和软件的子程序的接口,方便以后进一步开发使用,本设计具有普遍性和底成本。5. 在功能上还需要改进还有在一些方面需要提高,由于能力有限设计的作品存在不足需要改进。致 谢在本设计的完成之际,向任志山老师致以最诚挚的感谢,在开始的论文选题到设计完成老师都给了我很多的指导和帮助,在老师的身上学到了敬业的精神和课本上学不到的知识,让我受益匪浅,每次老师总是很有耐心地教导我指正我的不足之处,如何修改如何更正而且我也学会怎么去了自学,更是学到了做人的道理。同时我也非常感谢同学们的帮助,同学们给了我许多参考,耐心讲解论文的制作过程和大致结构,给了我很大的启发。我非常感谢家人们的支持和理解,可以让我安心的做设计,是我坚强的后盾,最后非常感谢各位批阅论文的老师和学者,由于知识水平有限,错误在所难免,恳请老师批评指正。谢谢大家!参考文献1 李广弟等 单片机基础 北京航空航天出版社, 2001.72 楼然苗等 51 系列单片机设计实例 北京航空航天出版社, 2003.33 唐俊翟等 单片机原理与应用 冶金工业出版社, 2003.9 4 刘瑞新等 单片机原理及应用教程 机械工业出版社, 2003.74艾延廷,杨明绥,崔静,张强.智能吸尘器控制系统软件设计J.测控技术,2007,(02)5张蕾蕾,湖面清扫智能机器人的控制D;沈阳理工大学;2008年 6胡跃明,丁维中,吴忻生.吸尘机器人的研究现状与展望J.计算机自动测量与控制,2002,(02)7 任盛怡;曹长修;马世文;张明瀚.一种室内智能吸尘器充电返回算法J.计算机应用;2009,(06)8 Tomatis N,Nourbarkhsh I,siegwart R.Hybrid simultaneous localization and map building:a natural intergration of topological and metric. Robotics and Autonomous Systems . 20039 Yasutomi E Takaoka D,Yamada M,et al.Cleaning robot control. Proceeding of the IEEE International Conference on Robotics and Automation . 1998附录一程序代码:#include #include #includeeeprom.h#define uint unsigned int#define uchar unsigned char sbit RS=P26;sbit EN=P27;sbit LED=P17;sbit SET=P14;sbit ADD=P15;sbit DEC=P16;sbit BEEP=P13;/蜂鸣器sbit fs=P20;/风扇sbit ADCS = P10; sbit ADCLK = P11; sbit ADDI = P12; sbit ADDO = P12;bit yyp=1;uchar shou_b=0;uchar tab4;uint DUST_SET=75; /固体颗粒的阈值bit shanshuo_st; /闪烁间隔标志bit beep_st; /蜂鸣器间隔标志uchar x=4; /计数器/定义标识uchar FlagStart = 0; float DUST_Value; uint DUST;uchar num=0;uchar mm;uchar abc;uchar ADC_Get10=0; /定义AD采样数组uchar str5=0;/*初始化定时器0*/void InitTimer(void)TMOD = 0x01; TL0 = (65536-10000)/256; /定时10ms TH0 = (65536-10000)%256; TR0 = 1;ET0 = 1; EA = 1;/*lcd1602程序*/void delay1ms(uint ms)/延时1毫秒(不够精确的) uint i,j; for(i=0;ims;i+) for(j=0;j0;i-) for(j=110;j0;j-);void di()BEEP=0;delay(100);BEEP=1;/*按键检测*/void checkkey() if(SET=0) delay(10); if(SET=0) di();while(!SET);TR0 = 0; xunji_m();/循迹模式yyp=0; if(ADD=0)delay(10);if(ADD=0)di();while(!ADD);/TR0 = 1; xunji_e();/取消循迹模式yyp=1;if(DEC=0)delay(10);if(DEC=0)di();while(!DEC);shou_b+; /0 风扇停止标志位 1 风扇低速标志位 2 风扇高速标志位if(shou_b=3)shou_b=0;/*AD0832转换程序*/uchar ADC0832(bit mode,bit channel) /AD转换,返回结果uchar i,dat,ndat;ADCS = 0;/拉低CS端_nop_();_nop_();ADDI = 1;/第1个下降沿为高电平ADCLK = 1;/拉高CLK端_nop_();_nop_();ADCLK = 0;/拉低CLK端,形成下降沿1_nop_();_nop_();ADDI = mode;/低电平为差分模式,高电平为单通道模式。ADCLK = 1;/拉高CLK端_nop_();_nop_();ADCLK = 0;/拉低CLK端,形成下降沿2_nop_();_nop_();ADDI = channel;/低电平为CH0,高电平为CH1ADCLK = 1;/拉高CLK端_nop_();_nop_();ADCLK = 0;/拉低CLK端,形成下降沿3ADDI = 1;/控制命令结束(经试验必需)dat = 0;/下面开始读取转换后的数据,从最高位开始依次输出(D7D0)for(i = 0;i 8;i+)dat = 1;ADCLK=1;/拉高时钟端_nop_();_nop_();ADCLK=0;/拉低时钟端形成一次时钟脉冲_nop_();_nop_();dat |= ADDO;ndat = 0; /记录D0if(ADDO = 1)ndat |= 0x80;/下面开始继续读取反序的数据(从D1到D7) for(i = 0;i = 1;ADCLK = 1;/拉高时钟端_nop_();_nop_();ADCLK=0;/拉低时钟端形成一次时钟脉冲_nop_();_nop_();if(ADDO=1)ndat |= 0x80; ADCS=1;/拉高CS端,结束转换ADCLK=0;/拉低CLK端ADDI=1;/拉高数据端,回到初始状态if(dat=ndat)return(dat);elsereturn 0; /中值滤波/算法:先进行排序,然后将数组的中间值作为当前值返回。uchar Error_Correct(uchar *str,uchar num) unsigned char i=0; unsigned char j=0; uchar Temp=0; /排序 for(i=0;inum-1;i+) for(j=i+1;jnum;j+) if(stristrj) Temp=stri; stri=strj; strj=Temp; /去除误差,取中间值return strnum/2;/*接线定义*/sbit IN1=P30; sbit IN2=P31;sbit IN3=P32;sbit IN4=P33;/*传感器接线定义*/sbit Left_InSen=P36;sbit Right_InSen=P37;void delays(unsigned int n)unsigned char i, j,k;for(k=0;k=n;k+)_nop_();_nop_();i = 5;j = 6;dowhile (-j); while (-i);void gogogo(void) IN1=1; IN2=0; IN3=1; IN4=0;void stop(void) IN1=0; IN2=0; IN3=0; IN4=0;void turnright(void) IN1=0; IN2=1; IN3=1; IN4=0;void turnleft(void) IN1=1; IN2=0; IN3=0; IN4=1;void xunji()if(Left_InSen=0&Right_InSen=1) turnright(); delays(10-4); stop(); delays(4); else if(Left_InSen=1&Right_InSen=0) turnleft(); delays(10-4); stop(); delays(4); else gogogo(); delays(10-7);/7的值增大车的速度减小 7的值减小车的速度增大 stop(); delays(7); void shou_dong()/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 断桥门窗产品培训
- 课件模板空白高级设置
- 高级感摄影培训
- 装饰行业销售培训
- 课件框架搭建步骤图解
- 公司拓展培训结业
- 少儿超轻粘土课件
- 大班珍惜动物课件
- 展览活动电子课件
- 课件最后一页文案
- 临床护士实践能力考核
- 交安工程施工合同
- 肠造口并发症讲稿课件
- GB/T 6403.5-2008砂轮越程槽
- GB/T 27021.2-2021合格评定管理体系审核认证机构要求第2部分:环境管理体系审核与认证能力要求
- FZ/T 73001-2016袜子
- 新部编版道德与法治四年级上册第一单元课件全套与班级共成长
- 医院人才队伍建设规划
- 记帐传票模板1
- 职业病防治培训PPT课件
- JG_T127-2017建筑门窗五金件 滑撑
评论
0/150
提交评论