凌阳超声波测距
超声波测距系统
超声波测距系 统
-
引言
目录
系统设计
引言
超声波测距是一种非接触式的测 量方法,具有精度高、可靠性强、
对环境适应性强等优点
本设计以51单片机为核心,利用 超声波传感器进行距离测量,实 现成
本系统主要由51单片机、超声波传感器、显示模块和电源模块组成
电路连接
系统设计
将超声波传感器的Trig和 Echo分别连接到51单片机的 P1.0和P1.1口 将LCD显示屏的RS、RW和E分 别连接到51单片机的P0.0、 P0.1和P0.2口
电源模块通过杜邦线连接到 51单片机和超声波传感器: 为它们提供工作电压
系统设计
软件设计
主要步骤
初始化:包括初始化LCD显示屏和超声波传感器 发送超声波:通过51单片机的P1.0口发送一个10微秒的脉冲信号,触发超声波传感器 发送超声波
THANKS
系统设计
接收回声:超声波传感器接 收到回声后,通过P1.1口将 信号发送到51单片机
计算距离:51单片机接收到 回声信号后,根据超声波传 感器的工作原理,计算出距 离
显示结果:将计算出的距离 通过LCD显示屏显示出来
系统设计
主要代码
由于代码较长,这里只给出部分关键代码,具体可以参考以下示例代码
-
51单片机:作为系统的核心,负责处理和发送超声 波传感器的信号,并控制显示模块显示距离信息
超声波传感器:采用HC-SR04型号,该传感器具有测 量范围广、精度高等优点。其工作原理是利用超声 波的回声进行距离测量 显示模块:采用LCD显示屏,用于实时显示测量得到 的距离信息 电源模块:为整个系统提供稳定的工作电压
超声波检测的倒车雷达开题报告
《基于超声波检测的倒车雷达设计》开题报告一、课题的目的和意义1.研究目的(1)研究了一种汽车倒车雷达预警系统。
该系统在常见的汽车倒车预警装置的基础上采用计算机控制技术和超声波测距技术,通过显示障碍物与汽车的距离并根据其距离远近实时发出报警,解除了驾驶员泊车和起动车辆时前后左右探视所引起的困扰,提高了驾驶安全性。
(2)在研究汽车倒车雷达预警系统过程中,运用理论分析、电路设计和计算机仿真等研究手段,完成了倒车雷达预警系统硬件和软件的设计,采用了模糊控制算法,进行了系统的计算机仿真。
2.研究意义随着中国经济的持续增长和汽车价格的持续下降,越来越多的家庭拥有自己的汽车。
在享受汽车给我们带来的便利同时,由于倒车而产生的问题也日益突出。
一方面汽车的数量逐年增加,公路、街道、停车场和车库拥挤不堪,可转动的空间越来越少;另一方面,新司机及非专职司机越来越多,因倒车引起的纠纷越来越多,车辆之间、车辆与人、车辆与墙壁等障碍物之间的碰撞时有发生。
在2006年汽车事故的发生比例中,倒车引起的事故占28%,倒车己成为令人们头痛的一项任务,即使是经验丰富的司机也在抱怨倒车是件费力费神的事。
据统计危险境况时,如果能给驾驶员半秒钟的预处理时间,则可分别减少追尾事故的30%,路面相关事故的50%,迎面撞车事故的60%。
改善倒车遇到的窘境被越来越多的人所关注,人们对汽车操纵的便捷性提出了更高的要求,希望有种装置能够解决汽车倒车给人们带来的不便,消除驾驶中的不安全因素,可将车快速准确地停放到指定的位置。
二、文献综述国外汽车倒车雷达预警系统早期大多采用红外线的发射与接收原理,不属于雷达(无线电波)的产品,最大的缺点是红外线波易受干扰,整个系统的警示音常呈现不稳定的乱鸣状态,另外对深黑色粗糙表面物体的反应也较差。
但更糟糕的是,无论是红外线发射器或接收器,只要任何一方让一层薄薄的冰雪或泥尘覆盖,系统就会失效。
最近在欧美出现的一种电磁感应倒车雷达。
超声波测距设计方案设计者凌建龙美君单位航空电子电气工程学院
表示外径尺寸。所以用CX20106A进行接收。
单片机测距原理
单片机发出超声波测距是通过不断检测超声 波发射后遇到障碍物所反射的回波,从而测出发 射和接收回波的时间差tr,然后求出距离S=Ct/ 2,式中的C为超声波波速。限制该系统的最大可 测距离存在4个因素:超声波的幅度、反射的质地、 反射和入射声波之间的夹角以及接收换能器的灵 敏度。接收换能器对声波脉冲的直接接收能力将 决定最小的可测距离。为了增加所测量的覆盖范 围、减小测量误差,可采用多个超声波换能器分 别作为多路超声波发射/接收的设计方法,限于 实际需要,本电路只采用单路超声波发射接收。 由于超声波属于声波范围,其波速C与温度有关。
设计目的与要求
▪ 设计制作一个测距仪并实时数码管显示距
离
▪ 其测量范围为0.1~10m ▪ 测距仪测量精度为1cm,测量误差小于4cm
信号处理电路(单片机)
单片机采用AT89S52
AT89S52是一种低功耗、高性能CMOS 8位微控制器,具有8K 在 系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术 制造,与工业80C52 产品指令和引脚完全兼容。片上Flash允许程序存 储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位 CPU 和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系 统中得到广泛应用。 AT98C52最高晶振频率24MHz AT98S52最高晶振频率33MHz S比C多了128字节的RAM,在线ISP编程,一个数据DPTR,一个看门狗计 时器,掉电模式下能从中断恢复
超声波发射
▪ 压电式超声波换能器是利用压电晶体的谐振 来工作的。超声波换能器内部有两个压电晶片和 一个换能板。当它的两极外加脉冲信号,其频率 等于压电晶片的固有振荡频率时,压电晶片会发 生共振,并带动共振板振动产生超声波,这时它 就是一个超声波发生器;反之,如果两电极问未 外加电压,当共振板接收到超声波时,将压迫压 电晶片作振动,将机械能转换为电信号,这时它 就成为超声波接收换能器。发射器主要由反向 74LS04和超声波发射器T组成。
超声波测距设计方案
超声波测距设计方案1. 概述超声波测距是一种利用超声波传感器对目标物体进行距离测量的技术。
它具有非接触、精度高、速度快等优点,广泛应用于工业自动化等领域。
本设计方案旨在实现一个基于Arduino的超声波测距系统,可以测量距离在2cm~400cm之间的目标物体,并将结果显示在液晶屏上,以方便用户观察和使用。
2. 系统组成本系统由硬件和软件两部分组成,硬件系统包括超声波传感器、Arduino主控板、液晶屏、电源等部分;软件系统包括Arduino的程序。
2.1 超声波传感器超声波传感器是本系统中最关键的部分,它通过发射超声波信号并接收回波信号,测量目标物体与传感器的距离。
常用的超声波传感器有HC-SR04、JSN-SR04T等型号,本设计方案使用HC-SR04超声波传感器。
2.2 Arduino主控板Arduino是一种开源的嵌入式系统,具有方便、易用、可扩展等特点,可以实现各种各样的控制任务。
本设计方案使用Arduino UNO主控板,它是一种基于ATmega328P芯片的开发板,具有丰富的接口和较高的性能和稳定性。
2.3 液晶屏液晶屏是显示距离测量结果的部分,本设计方案采用16*2字符型液晶屏,能够显示2行16个字符,显示结果清晰、直观。
2.4 电源本系统采用外接直流电源供电,电压为5V,可以通过USB接口或外部电源插头供电。
3. 系统原理本系统的测距原理基于超声波传感器发射超声波信号并接收回波信号的原理。
当超声波传感器发射超声波信号后,信号会以声速传播在空气中,当遇到目标物体后,部分波信号会被目标物体反射回来,形成回波信号,超声波传感器接收到回波信号后,再通过计算超声波信号的来回时间、声速等参数,便可以计算出目标物体与传感器的距离。
4. 系统设计超声波传感器通过接口连接到Arduino主控板,并需要外接电源,具体接线图如下所示:超声波传感器 VCC -> Arduino 5V液晶屏 RW -> Arduino GND整个系统的软件设计主要包括两部分,一部分是超声波测距的程序,另一部分是液晶屏显示的程序。
超声波测距系统的设计
超声波测距系统的设计引言:一、硬件设计:1.选择传感器:超声波传感器是测距系统的核心部件,通常采用脉冲法进行测量。
在选择传感器时,应考虑工作频率、测量范围、精度和稳定性等参数,并根据实际需求进行选择。
2.驱动电路设计:超声波传感器需要高频信号进行激励,设计驱动电路时需要根据传感器的工作要求来设计合适的电路,保证信号稳定且能够满足传感器的工作需求。
3.接收电路设计:超声波传感器产生的脉冲回波需要经过接收电路进行信号放大和滤波处理,设计接收电路时需要考虑信号放大的增益、滤波器的截止频率以及抗干扰能力等因素。
4.控制板设计:控制板是超声波测距系统中的核心控制器,负责控制测距过程、数据处理以及通信等功能。
在设计控制板时,应根据系统的要求选择合适的微控制器或单片机,并设计合理的电路布局和电源电路。
二、软件编程:1.驱动程序开发:根据传感器的规格书和数据手册,编写相应的驱动程序,实现对超声波传感器的激励和接收。
2.距离计算算法开发:通过测量超声波的往返时间来计算距离,根据声速和时间的关系进行距离计算,并根据实际情况对计算结果进行修正。
3.数据处理和显示:根据实际需求,对测量得到的距离进行处理,并将结果显示在合适的显示设备上,如LCD屏幕或计算机等。
4.数据通信:如果需要将测量结果传输至其他设备或系统,则需要编写相应的数据通信程序,实现数据的传输和接收。
三、系统测试与优化:1.测试传感器性能:测试测距系统的稳定性、精度和灵敏度等性能指标,根据测试结果对系统参数进行优化和调整。
2.系统校准:超声波测距系统可能受到环境温度、湿度和声速等因素的影响,需要进行校准以提高测量精度。
3.系统集成与实际应用:将超声波测距系统与实际应用场景进行集成,进行实际测试和验证。
总结:超声波测距系统的设计包括硬件设计和软件编程两个方面,其中硬件设计主要包括传感器选择、驱动电路设计和接收电路设计等;软件编程主要包括驱动程序开发、距离计算算法开发、数据处理和显示以及数据通信等。
超声波测距的应用原理
超声波测距的应用原理1. 介绍超声波测距是一种常见的测量距离的技术,广泛应用于工业自动化、智能家居、机器人等领域。
本文将介绍超声波测距的原理及其在实际应用中的一些案例。
2. 超声波测距原理超声波测距利用声波在空气中传播的特性进行测量。
其原理主要包括发射超声波脉冲、接收超声波反射信号以及计算测距距离三个步骤。
2.1 发射超声波脉冲超声波传感器会发射一个超声波脉冲信号,通常频率在20kHz到200kHz之间。
脉冲信号在空气中传播,并在目标物体上发生反射。
2.2 接收超声波反射信号当超声波脉冲信号被目标物体反射后,超声波传感器会接收到反射信号。
接收到的信号经过放大和滤波处理后,被转换成数字信号。
2.3 计算测距距离根据超声波传感器发送脉冲信号到接收到反射信号的时间间隔,可以计算出测距距离。
测距公式如下:距离 = (声速 × 时间间隔) / 2其中,声速通常使用常数值343m/s,时间间隔以秒为单位。
3. 超声波测距的应用案例3.1 工业自动化超声波测距广泛应用于工业自动化领域,例如在机器人的导航和避障中。
通过使用超声波传感器,机器人可以测量到周围的障碍物距离,从而做出相应的动作或路径调整。
3.2 智能家居超声波测距也被应用于智能家居系统中。
例如,在智能安防系统中,超声波传感器可以检测到入侵者的接近,并触发相应的报警系统。
此外,超声波测距还可以用于智能灯光系统中,自动调节灯光的亮度和发散角度。
3.3 车辆辅助系统超声波测距在车辆辅助系统中也得到了广泛应用。
例如,在倒车雷达系统中,超声波传感器可以探测到车辆后方的障碍物,提供给驾驶员倒车时的参考,并发出警告信号。
3.4 液位测量超声波测距还可以用于液位测量领域。
传感器发射超声波脉冲进入液体,当脉冲到达液体表面后会发生反射,传感器接收到反射信号后可以计算出液位的高度。
4. 总结超声波测距技术通过发射和接收超声波信号来测量目标物体的距离。
它在工业自动化、智能家居、车辆辅助系统以及液位测量等领域有着广泛的应用。
超声波测距实验报告
超声波测距模块工作原理
超声波发射器发射 一组超声波脉冲
脉冲遇到物体后反 射回来
超声波接收器接收 反射回来的脉冲
通过计算发射和接 收脉冲之间的时间 差,得到物体与传 感器之间的距离
编写Arduino程序,控制 超声波传感器发送和接收 信号
连接Arduino板与电脑, 上传程序并运行
调整超声波传感器的角度 和位置,确保测量距离准 确
开始测量
准备超声波传感器和Arduino板 连接超声波传感器和Arduino板 编写程序,设置触发和接收引脚 启动Arduino板,开始测量距离
数据记录和处理
添加标题
添加标题
添加标题
添加标题
拓展应用场景:将超声波测距技术 应用于更多领域,如自动驾驶、智 能机器人等。
降低成本:通过优化设计和生产工艺, 降低超声波传感器和测距系统的成本, 使其更广泛地应用于各种领域。
感谢您的观看
汇报人:XX
实验步骤
准备实验器材
超声波传感器 添加标题
连接线 添加标题
添加标题 Arduino开发板
添加标题 面包板
跳线 添加标题
测量工具 添加标题
添加标题 电脑和软件
添加标题 实验环境
搭建实验装置
准备超声波传感器、 Arduino板、面包板、跳 线等材料
连接超声波传感器与 Arduino板的引脚
连接Arduino板与面包板 的引脚
学会使用超声波传感器进行距离测 量
学会分析实验数据,得出结论
掌握数据处理和分析技巧
学习如何使用超声波传感器进行距 离测量
基于凌阳61系列单片机的超声波测距系统
基于凌阳61系列单片机的超声波测距系统摘要本文设计以spce061a作为应用控制核心,超声波测距模组及其控制电路相结合的带语音功能的超声波测距系统。
其优点硬件功能强大,软件功能完善,控制系统可靠,性价比较高等特点,具有一定的使用和参考价值。
关键词 spce061a单片机;超声波测距模组;控制系统中图分类号tp316文献标识码a 文章编号1674-6708(2010)20-0126-020 引言由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。
利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求。
为了研究和利用超声波,人们已经设计和制成了许多超声波发生器。
总体上讲,超声波发生器可以分为两大类:一类是用电气方式产生超声波,一类是用机械方式产生超声波。
电气方式包括压电型、磁致伸缩型和电动型等。
目前,较为常用的是压电式超声波发生器,通常用于小距离检测、障碍物检测等。
1 超声波测距原理超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。
超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/2 。
这就是所谓的时间差测距法。
超声波测距的原理是利用超声波在空气中的传播速度为已知,测量声波在发射后遇到障碍物反射回来的时间,根据发射和接收的时间差计算出发射点到障碍物的实际距离。
由此可见,超声波测距原理与雷达原理是一样的。
测距的公式表示为:l=c×t式中l为测量的距离长度;c为超声波在空气中的传播速度;t为测量距离传播的时间差(t为发射到接收时间数值的一半)。
超声波测距主要应用于倒车提醒、建筑工地、工业现场等的距离测量,虽然目前的测距量程上能达到百米,但测量的精度往往只能达到厘米数量级。
单片机超声波测距实习报告
一、实习背景随着科技的不断发展,单片机技术在各个领域得到了广泛应用。
超声波测距技术作为一种非接触式测量方法,具有精度高、稳定性好、抗干扰能力强等优点,在工业自动化、智能家居、机器人等领域有着广泛的应用前景。
本实习报告旨在通过单片机超声波测距实验,了解超声波测距原理,掌握单片机编程技巧,并实现一个简单的超声波测距系统。
二、实习目的1. 理解超声波测距原理,掌握超声波传感器的工作原理。
2. 掌握单片机编程技巧,实现超声波测距功能。
3. 了解超声波测距系统在实际应用中的注意事项。
三、实习内容1. 超声波测距原理超声波测距原理基于声波在介质中传播的速度和距离的关系。
当超声波发射器发出超声波信号后,遇到障碍物会发生反射,反射信号被接收器接收。
根据超声波发射和接收的时间差,可以计算出障碍物与传感器的距离。
2. 实验设备(1)51单片机开发板(2)HC-SR04超声波测距模块(3)蜂鸣器(4)LED灯(5)面包板、连接线3. 实验步骤(1)搭建实验电路将51单片机开发板、HC-SR04超声波测距模块、蜂鸣器、LED灯等元器件按照电路图连接到面包板上。
(2)编写程序使用C语言编写单片机程序,实现以下功能:1)初始化51单片机、HC-SR04超声波测距模块、蜂鸣器、LED灯等外围设备。
2)使用定时器0产生定时中断,定时检测HC-SR04超声波测距模块的回波信号。
3)根据超声波往返时间计算距离,并显示在LCD显示屏上。
4)当距离小于设定值时,蜂鸣器发出报警声,LED灯亮起。
(3)编译、下载程序将编写好的程序编译并下载到51单片机开发板上。
(4)测试与调试连接LCD显示屏,观察距离显示是否正常。
调整HC-SR04超声波测距模块与障碍物的距离,测试报警声和LED灯是否正常工作。
四、实习结果与分析1. 实验结果通过实验,成功实现了超声波测距功能。
当距离小于设定值时,蜂鸣器发出报警声,LED灯亮起。
2. 分析(1)超声波测距原理正确,程序编写无误。
51单片机实现超声波测距报警系统
51单片机实现超声波测距报警系统超声波测距报警系统是一种基于51单片机的硬件电路和软件程序开发的测距设备。
本文将从设备原理和设计、电路连接和程序开发等方面进行详细介绍。
一、设备原理和设计超声波测距报警系统的原理是利用超声波传感器测量并计算被测物体与传感器的距离,并通过单片机采集和处理超声波信号,根据测量结果触发报警和显示等功能。
1.超声波传感器:超声波传感器是用来发射和接收超声波信号的装置,一般由发射器和接收器组成。
发射器发射超声波信号,接收器接收被测物体反射的超声波信号。
2.单片机:本系统采用51单片机作为控制核心,负责采集和处理超声波信号,控制报警和显示等功能。
3.报警器:当距离小于设定阈值时,触发报警器发出声音或闪光等警告信号。
4.显示屏:用来显示测量结果,一般为数码管或液晶显示屏。
5.电源和电路:提供系统所需的电源和信号连接电路。
二、电路连接超声波测距报警系统的电路连接主要包括超声波传感器、单片机、报警器、显示屏以及电源等模块。
1.超声波传感器连接:将超声波传感器的发射端和接收端分别连接到单片机的引脚上,发射端连接到P1口,接收端连接到P2口。
2.报警器连接:将报警器连接到单片机的一个IO口,通过控制该IO 口的高低电平来触发报警。
3.显示屏连接:将显示屏连接到单片机的相应IO口,通过向显示屏发送数据来显示测量结果。
4.电源连接:将电源连接到单片机以及其他模块的供电端,确保系统正常工作。
三、程序开发1.初始化设置:包括引脚和端口的初始化设置,包括超声波传感器引脚和单片机的IO口设置。
2.测量距离:通过单片机控制超声波传感器发射超声波信号,并通过接收器接收反射的超声波信号,计算出被测物体与传感器的距离。
3.报警触发:根据设定的阈值,当测量到的距离小于阈值时,通过控制报警器发出声音或闪光等警告信号。
4.显示结果:通过控制显示屏将测量结果显示出来。
5.循环检测:通过循环检测的方式,不断进行测量并处理数据,实时更新测量结果和触发报警。
超声波测距 含51单片机程序与电路图1
超声波测距摘要该超声测距系统采用芯片STC89C52作为系统的主控制器,利用NE555作为本系统的脉冲发射源,结合3位7段数码管液晶显示,达到了较大的测试距离和较高的测量精度,并能实时显示且无明显失真。
关键字: 超声波测距实时第1章设计题目与要求1.1 设计要求采用压电式超声波换能器,使用单片机作为控制器,完成超声波测距仪的软硬件设计。
1.2 基本要求:(1)具有反射式超声波测距功能,测量距离0.1m~3.0m;(2)测量距离精度:误差±1cm;(3) 利用LED数码管显示测试距离;(4)实时显示测量的距离,显示格式为:□.□□米第2章系统总体方案论证2.1 系统总体方案题目要求设计一个利用超声波反射原理测量距离的超声波测距仪,并且具有实时同步显示,由此本系统可以划分为发射、接收、显示、主控制模块共四大模块,如图2.1所示:图2.1系统基本方框图针对技术指标的需要,为使系统的测量距离更远、精度更高,提高系统的整体完善性,现对以上系统各个功能模块进行一一的方案论证:2.2 主控制模块2.2.1 主控制模块概述主控制器模块其实就是一个简化的嵌入式系统。
嵌入式系统一般指非PC系统,有计算机功能但又不称之为计算机的设备或器材。
它是以应用为中心,软硬件可裁减的,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。
嵌入式系统的核心是嵌入式微处理器。
2.2.2 主控制模块方案选择根据以上知识,考虑到目前市场上比较常用的AVR、61、51三种微控制器,我们有如下三种方案可供选择。
方案一:AVR单片机AVR单片机种类丰富,有AT tiny、AT90S、ATmeg系列,各个系列又有不同的型号,价格较适中。
相对来说,比起51单片机来说资源较丰富,内部也有集成A/D ,有PWM 输出,但在系统进一步扩展方面不是很好,这类单片机主要应用于工业控制领域,在语音处理方面没有什么优势。
方案二:SPCE061A.凌阳单片机的资源相对来说比较丰富,32K ×16bitFlash ,两路D/A ,1个全双工异步串行口(UART )方便其跟其他为控制通信。
超声波模块的工作原理
超声波模块的工作原理
超声波模块是一种常用的测距和避障设备。
其工作原理是利用超声波的传播特性进行测距,从而实现距离的测量和障碍物的检测。
超声波模块通常由发射器和接收器组成。
发射器通过电信号激励压电陶瓷晶片产生超声波信号,并向周围空间发射出去。
当超声波遇到物体时,会发生声波的反射。
反射的声波会被接收器接收到,并通过信号处理电路进行处理。
接收器部分的工作原理是将接收到的超声波信号转化为电信号。
当超声波信号被接收到时,压电陶瓷晶片会产生电压信号。
这个电压信号经过放大和滤波处理后,可以输出给后续的电子设备进行距离测量或障碍物检测。
超声波的传播速度是已知的,因此可以利用发射和接收到超声波的时间差来计算距离。
通常,超声波模块会测量从发射器发射超声波到接收器接收到反射超声波的时间间隔。
通过将时间间隔乘以超声波的传播速度,即可得到距离的估计值。
此外,超声波模块还可以通过测量接收到的超声波信号的强度来识别相对强度的障碍物。
根据反射超声波信号的强弱,可以推断出距离模块的距离和障碍物的大致大小。
这对于避障和环境感知等应用非常有用。
总结来说,超声波模块利用超声波的传播特性实现距离的测量和障碍物的检测。
通过发射器产生超声波信号,接收器接收并
处理反射的超声波信号,最终利用时间差和信号强度来计算距离和检测障碍物。
超声波倒车雷达的系统设计
超声波倒车雷达的系统设计摘要倒车雷达是针对日益拥挤的道路交通状况、以及在停车场、车库、街道等比较狭窄区域,避免车与车,车与人以及车与墙壁等障碍物发生碰撞,摩擦而出现的一种着眼于倒车防护的汽车防撞系统。
随着越来越多的高科技产品逐渐融入了日常生活中,倒车雷达系统发生了巨大的变化。
仿生学、声学等前沿学科的技术的日趋成熟与实用化,赋予了倒车雷达系统新的的研究方向与意义。
本文描述了一个由三个超声波测距模块构成的,提供语音报警功能的超声波倒车雷达系统。
该系统采用凌阳16位单片机SPCE061A 为核心,分别控制三个超声波模块,每一个超声波测距模块都被设定面向不同方向,以探测不同方向的障碍物。
本系统采用单片机控制时间计数和超声波的发射和接收,利用超声波回波的间隔时间,得出实测距离。
结果表明该系统具有结构简单、工作可靠、精度高等特点。
关键词:SPCE061A单片机;超声波测距;语音提示Ultrasonic Parking Sensor System DesignABSTRACTThe back-draft radar is aims at day by day the crowded road traffic condition, as well as in the parking lot, the garage, the street and so on the quite narrow region, avoids automobile and automobile, obstacle and so on Automobile and person as well as vehicle and wall has the collision, one kind which the friction appears focuses to the back-draft protection automobile collision avoidance system.As well as the high-tech products gradually integrated into the daily life, the Parking Distance Control system has undergone tremendous changes. The Parking Distance Control system has been given the new direction of the research and significance by the developed of the Bionics, Acoustic, etc. This article describes a Parking Distance Control system which contains three ultrasonic ranging modules and the results can be pronounced in real-time. The three ultrasonic ranging modules are set to three different directions to detect the roadblock .This three modules are control by the system which is based on sunplus SPCE061A microprocessor. The time counting and both the transmitting and receiving of the ultrasonic wave are controlled by the microprocessor. The measured distance can be calculated and displayed by the echo time by the code. The features of the simple hardware, stable operation and high precision are incarnated in the proposed system.Key Words: SPCE061A microprocessor ;Utrasonic ranging ;Vice prompts目录第一章绪论 (1)1.1课题背景 (1)1.1.1 倒车雷达的发展历史 (1)1.1.2 倒车雷达的发展方向与展望 (3)1.2课题任务及要求 (3)1.3课题的主要内容及目的 (3)第二章超声波倒车雷达系统的总体方案论证 (5)2.1超声波测距PWM信号方案论证 (5)2.1.1超声波测距PWM信号硬件实施方案 (5)2.1.2超声波测距PWM信号软件实施方案 (6)2.1.3超声波测距PWM信号实施方案比较 (6)2.2超声波倒车雷达系统硬件方案论证 (7)2.3超声波倒车雷达系统软件方案论证 (9)第三章超声波倒车雷达系统的硬件设计 (10)3.1 SPCE061A精简开发板电路原理 (10)3.1.1 SPCE061A简介 (10)3.1.2电源模块 (11)3.1.3放音模块 (11)3.2 超声波测距模块电路的设计 (12)3.2.1超声波谐振频率调理电路的设计 (12)3.2.2超声波回波信号处理电路的设计 (13)3.2.3超声波测距模式选择电路的设计 (14)3.3 转接板电路的设计 (15)3.4 显示电路的设计 (16)3.4.1二极管闪烁报警电路的设计 (16)3.4.2 LCD显示报警电路的设计 (16)3.5 各模块接口分配 (17)第四章超声波倒车雷达系统的软件设计 (19)4.1 超声波测距原理 (19)4.2 μ'nSP IDE的项目文件管理的组织结构 (19)4.3 软件架构 (20)4.4 各模块程序的设计 (21)4.4.1 主程序的设计 (21)4.4.2 超声波测距程序的设计 (22)4.4.3语音播放程序的设计 (24)4.4.4 二极管闪烁程序的设计 (25)4.4.5 LCD初始化及驱动程序的设计 (26)第五章总结 (27)参考文献 (28)附录程序清单 (29)致谢 (46)第一章绪论超声波雷达又称泊车辅助系统,是一种利用超声波原理,由装置于车尾保险杠上的探头发送超声波撞击障碍物后,反射此声波探头,从而计算出车体与障碍物之间的距离。
HC-SR04超声波测距模块介绍
HC-SR04超声波测距模块介绍超声波简介超声波是由机械振动产生的, 可在不同介质中以不同的速度传播, 具有定向性好、能量集中、传输过程中衰减较小、反射能力较强等优点。
超声波传感器可广泛应用于非接触式检测方法,它不受光线、被测物颜色等影响, 对恶劣的工作环境具有一定的适应能力, 因此在水文液位测量、车辆自动导航、物体识别等领域有着广泛的应用。
超声波测距原理超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波, 从而测出发射和接收回波的时间差Δt , 然后求出距离S 。
在速度v 已知的情况下,距离S 的计算,公式如下:S = vΔt/ 2在空气中,常温下超声波的传播速度是334 米/秒,但其传播速度V 易受空气中温度、湿度、压强等因素的影响,其中受温度的影响较大,如温度每升高1 ℃, 声速增加约0. 6 米/ 秒。
因此在测距精度要求很高的情况下, 应通过温度补偿的方法对传播速度加以校正。
已知现场环境温度T 时, 超声波传播速度V 的计算公式如下:V = 331. 5+0.607T这样, 只要测得超声波发射和接收回波的时间差Δt 以及现场环境温度T,就可以精确计算出发射点到障碍物之间的距离。
HC-SR04超声波测距模块简介HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm;模块包括超声波发射器、接收器与控制电路。
HC-SR04超声波测距模块实物图HC-SR04超声波测距模块特点1、典型工作用电压:5V2、超小静态工作电流:小于5mA3、感应角度(R3 电阻越大,增益越高,探测角度越大):R3 电阻为392,不大于15 度R3 电阻为472, 不大于30 度4、探测距离(R3 电阻可调节增益,即调节探测距离):R3 电阻为392 2cm-450cmR3 电阻为472 2cm-700cm5、高精度:可达0.3cm6、盲区(2cm)超近HC-SR04超声波测距模块管脚VCC(5V)、 Trig(控制端)、 Echo(接收端)、地(GND)使用方法:控制口发一个10US 以上的高电平,就可以在接收口等待高电平输出。
基于单片机的超声波测距系统设计
基于单片机的超声波测距系统设计超声波测距系统在物联网和机器人等领域有着广泛的应用。
超声波作为一种非接触的测量方式,可以有效地避免物体表面的污染,适用于各种环境下的距离测量。
本文将介绍基于单片机的超声波测距系统的设计方法。
超声波测距的原理超声波测距是基于声波传播时间的测量。
超声波发射器发出超声波,经物体反射后被接收器接收。
根据声波的传播速度和接收时间,可以计算出超声波的传播距离。
常用的超声波频率为40kHz左右,其传播速度约为340m/s。
单片机与超声波测距在超声波测距系统中,单片机作为主控制器,负责控制整个系统的运行。
它接收来自超声波发射器的信号,触发超声波的发送,并计时等待超声波的返回。
当超声波被接收器接收时,单片机通过计算时间差来计算距离。
距离计算距离计算公式为:距离 =声速×时间差 / 2。
在系统中,声速是已知量,因此关键是准确测量时间差。
单片机通过计时器来精确测量从超声波发射到接收的时间,从而计算出距离。
误差分析超声波测距系统可能出现的误差主要有以下几种:1、计时器计时误差:这是时间测量误差的主要来源。
为提高计时精度,可以使用高精度的计时器或者采取软件滤波算法来降低误差。
2、声速误差:由于环境温度、湿度等因素的影响,声速可能会发生变化,从而影响测量结果。
可以通过引入温度传感器来对声速进行补偿,以减小误差。
3、反射面误差:由于被测物体的表面形状和质地等原因,超声波可能无法完全反射回来,导致测量结果偏小。
为减少误差,可以在发射端和接收端加装角度调节装置,使超声波尽量垂直于被测物体表面。
应用实例以下是一个基于单片机的超声波测距系统的设计实例:1、硬件选择:选用STM32F103C8T6单片机作为主控制器,并选用HC-SR04超声波传感器作为超声波发射和接收器。
该传感器具有外接和控制电路简单、性能稳定、可靠性高等优点。
2、硬件连接:将超声波传感器的Trig和Echo引脚分别连接到单片机的GPIO口,以控制超声波的发射和接收。
US-100超声波测距模块解析
US-100超声波测距模块解析1. 简介US-100超声波测距模块是一种用于非接触式测量距离的模块,它可以通过发送超声波信号并接收其回波,根据回波时间计算物体与模块的距离。
US-100模块是HC-SR04模块的升级版,具有较高的精度和更全面的功能。
US-100超声波测距模块有四个引脚:VCC、Trig、Echo和GND。
其中,VCC和GND是电源引脚,Trig是发射引脚,Echo是接收引脚。
模块可以通过直接连接到Arduino等微控制器上进行使用。
2. 原理超声波是一种高频音波,其频率通常在20kHz以上。
US-100模块工作原理是,当Trig引脚发出一个10微秒的高电平信号时,模块内部会产生一次20kHz的超声波发射。
当超声波遇到物体后反射回来,回波会被Echo引脚接收到。
模块会将Echo引脚的电平变化转换成一个时间信号,并将此信号与回波时间进行比较从而计算出距离。
通过改变Trig引脚产生高电平信号的持续时间,我们可以控制超声波的发送距离和精度。
US-100模块可以设置不同的模式,以改变Trig信号的长度和测量单位等参数。
3. 使用方法接线:•VCC引脚接3.3V或5V电源•GND引脚接地•Trig引脚接Arduino的数字输出引脚•Echo引脚接Arduino的数字输入引脚代码:```c int trigPin = 2; int echoPin = 3; long duration, cm, inches;void setup() { pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT);Serial.begin(9600); }void loop() { digitalWrite(trigPin, LOW); delayMicroseconds(2);digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); cm = duration / 58; inches = duration / 148;Serial.print(cm); Serial.print(。
基于51单片机超声波测距仪设计
基于51单片机超声波测距仪设计超声波测距仪是一种应用较为广泛的测量设备,可以用于测量物体与超声波传感器之间的距离。
本文将基于51单片机设计一个简单的超声波测距仪,并介绍其原理、硬件电路和程序设计。
一、原理介绍:超声波测距仪的工作原理是利用超声波传感器发射超声波,并接收其反射回来的波,通过计算发射和接收之间的时间差,从而确定物体与传感器之间的距离。
超声波的传播速度在空气中近似为331.4m/s,根据速度与时间关系,可以通过测量时间来计算距离。
二、硬件电路设计:1.超声波模块:选用一个常见的超声波模块,包括超声波发射器和接收器。
2.51单片机:使用51单片机作为控制器,负责控制超声波模块和处理测距数据。
3.LCD显示屏:连接一个LCD显示屏,用于显示测距结果。
4.连接电路:将超声波发射器和接收器分别连接到单片机的引脚,将LCD显示屏连接到单片机的相应引脚。
三、程序设计:1.初始化:包括初始化单片机的GPIO引脚、定时器以及其他必要的设置。
2.发送信号:发射一个超声波信号,通过超声波模块的引脚控制。
此时,启动定时器开始计时。
3.接收信号:当接收到超声波的反射信号时,停止定时器,记录计时的时间差。
根据超声波传播速度,可以计算出距离。
4.显示结果:将测得的距离数据显示在LCD显示屏上。
四、实现效果:通过以上设计,可以实现一个简单的超声波测距仪。
在实际应用中,可以根据需求扩展功能,例如增加报警功能、计算速度等。
总结:本文基于51单片机设计了一个超声波测距仪,包括硬件电路设计和程序设计。
通过该设备可以实现对物体与超声波传感器之间的距离进行测量,并将结果显示在LCD显示屏上。
该设计只是一个基本的框架,可以根据需要进行进一步的改进和优化。
urm37工作原理
urm37工作原理
URM37是一种超声波测距模块,它是用于实时测量距离的。
它使用声
波来测量距离。
声波在空气中前进速度固定,在空气中的速度大约为音速340m/s,因此可以使用声波的速度来测量物体和传感器之间的距离。
URM37可以将发射声波的时间(t)和声波返回时的时间(t')记录
下来,从而计算出物体与传感器之间的距离(d)。
通过使用下面的公式
可以计算出距离:
d=(t'-t)某v
其中,v为声波在空气中的速度,t为发送声波的时间,t'为接收到
声波的时间。
URM37的工作原理主要分为发射声波、接收声波、处理数据三个步骤。
第一步:发射声波
当URM37得到控制模块的开启信号时,它会发射声波。
声波发射器发
射36kHz的超声波信号,其发射角度为15度。
第二步:接收声波
当声波碰到物体后会发生反射。
反射声波将通过声波接收器传输回模块。
声波接收器将接收到的声波信号转换成电信号,然后传输给控制系统
进行处理。
第三步:处理数据
控制模块会计算超声波的时间差t'和t,然后用上述公式计算出物体与传感器之间的距离(d)。
控制模块将测得的距离数据传回主机,主机将显示距离。
URM37的测距尺度范围为2cm至5m。
因此URM37广泛应用于机器人导航、抓取物品、大型自动化设备等领域,具有广泛的应用前景。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
//===================================================== ===================// 文件名称:ultrasonic_App.c// 功能描述:超声波测距模组V2.0的功能接口函数// 维护记录:2006-02-21 V2.0//===================================================== ===================#include "SPCE061A.h"#define LONG_SEND_TIMER 1000 //中距测距时的40KHz信号发射时长#define LONG_SEND_TIMER2 3000 //中距测距的补充测距时的40KHz信号发射时长#define LONG_WAIT_DELAY 600 //中距测距的防余波干扰延时时长#define LONG_WAIT_DELAY2 1500 //中距测距的补充测距时的防余波干扰延时时长#define LONG_RES_ADD 0x00B0 //中距测距的结果补偿值#define LONG_RES_ADD2 0x0220 //中距测距的补充测距时的结果补偿值#define LOW_SEND_TIMER 250 //短距测距时的40KHz信号发射时长#define LOW_SEND_TIMER2 1000 //短距测距的补充测距时的40KHz信号发射时长#define LOW_WAIT_DELAY 180 //短距测距的防余波干扰延时时长#define LOW_WAIT_DELAY2 400 //短距测距的补充测距时的防余波干扰延时时长#define LOW_RES_ADD 0x0034 //短距测距的结果补偿值#define LOW_RES_ADD2 0x00B0 //短距测距的补充测距时的结果补偿值unsigned int Counter_buf; //超声波测距当中,用于保存TimerB计数的变量,相当于时长unsigned int EXT1_IRQ_flag=0; //外部中断标志变量,用于EXT1的IRQ中断程序和测距程序同步//===================================================== ===================// 语法格式:void Initial_ult(void)// 实现功能:超声波测距模组的初始化子程序// 参数:无// 返回值:无//===================================================== ===================void Initial_ult(void){unsigned int uiTemp;// 初始化端口主要是IOB8和IOB9uiTemp = *P_IOB_Dir;uiTemp = uiTemp|0x0200;uiTemp = uiTemp&0xfeff;*P_IOB_Dir = uiTemp;uiTemp = *P_IOB_Attrib;uiTemp = uiTemp|0x0200;uiTemp = uiTemp&0xfeff;*P_IOB_Attrib = uiTemp;uiTemp = *P_IOB_Buffer;uiTemp = uiTemp|0x0300;*P_IOB_Data = uiTemp;}//===================================================== ===================// 语法格式:void Delay_ult(unsigned int timers)// 实现功能:超声波测距模组的延时子程序// 参数:unsigned int timers 延时的时长(仅是一个相对量)// 返回值:无//===================================================== ===================void Delay_ult(unsigned int timers){unsigned int i;for(i=0;i<timers;i++){__asm("nop");}}//===================================================== ===================// 语法格式:unsigned int Resoult_ult(unsigned int Counter)// 实现功能:超声波测距模组的测距数据处理程序,将TimerB的计数值换算为距离// 参数:Counter 需要换算的计数值// 返回值:计算后的距离,厘米为单位//===================================================== ===================unsigned int Resoult_ult(unsigned int Counter){unsigned int uiTemp;unsigned long ulTemp;ulTemp = (unsigned long)Counter*33500;ulTemp = ulTemp/196608;ulTemp = ulTemp>>1; //除二uiTemp = (unsigned int)ulTemp;return uiTemp;}//===================================================== ===================// 语法格式:unsigned int measure_ult(unsigned int type)// 实现功能:超声波测距模组的测距程序,完成一次测距// 参数:type 选择测距类型,// type=1 中距测距// type=0 短距测距// 返回值:所测得的距离,以厘米为单位//===================================================== ===================unsigned int measure2_ult(unsigned int type);unsigned int measure_ult(unsigned int type){unsigned int Exit_flag = 1;unsigned int uiTemp;unsigned int uiResoult;unsigned int uiSend_Timer,uiWait_Timer,uiRes_Add;unsigned int uiSystem_Clock;uiSystem_Clock = *P_SystemClock; //将当前的系统时钟设置暂时保存起来*P_SystemClock = 0x0088; //将系统时钟设置为49MHz,分频比为1,强振模式if(type) //根据type即测距类型,选择不同的测距参数{uiSend_Timer = LONG_SEND_TIMER;uiWait_Timer = LONG_WAIT_DELAY;uiRes_Add = LONG_RES_ADD;}else{uiSend_Timer = LOW_SEND_TIMER;uiWait_Timer = LOW_WAIT_DELAY;uiRes_Add = LOW_RES_ADD;}*P_TimerB_Data = 0xfed2;*P_TimerB_Ctrl = 0x03c0; //enable 40KHz outDelay_ult(uiSend_Timer); //delay for send the signal*P_TimerB_Ctrl = 0x0006; //stop 40KHz out*P_TimerB_Data = 0x0000;*P_TimerB_Ctrl = 0x0001; //TimerB work as a counter at 192KHzwhile(*P_TimerB_Data<uiWait_Timer) //等待一定时间后再打开TimerA的计数(来源于EXT1){ //以避开余波的干扰*P_Watchdog_Clear = 0x0001;}*P_INT_Clear = 0x0100; //开中断前先清中断*P_INT_Ctrl = *P_INT_Ctrl_New|0x0100;*P_INT_Clear = 0xffff; //清除中断发生标志__asm("IRQ ON"); //打开总中断使能EXT1_IRQ_flag = 0; //TimerA的溢出中断的标志变量置0while(Exit_flag){if(EXT1_IRQ_flag==1) //当该变量在timerA的FIQ中断中被置1时表示接收到了回波{Exit_flag = 0; //exitCounter_buf = Counter_buf+uiRes_Add;//计数值加上一定的调整数据uiResoult = Resoult_ult(Counter_buf);//对计数值进行处理,得出距离值}if(*P_TimerB_Data>10000) //如计数值大于10000,表示超时{Exit_flag = 0; //exituiResoult = measure2_ult(type);//再进行一次补充的测距,将会加长40KHz信号发射的量*P_TimerB_Ctrl = 0x0006; //stop timerB}uiTemp = *P_TimerB_Data;*P_Watchdog_Clear = 0x0001;}*P_INT_Ctrl = *P_INT_Ctrl_New&(~0x0100); //关掉外部中断__asm("IRQ OFF"); //关掉总中断*P_SystemClock = uiSystem_Clock; //恢复系统时钟的设置return uiResoult;}//===================================================== ===================// 语法格式:void EXT1_IRQ_ult(void)// 实现功能:超声波测距模组的测距程序的EXT1中断服务程序,在EXT1的IRQ中断// 中调用// 参数:无// 返回值:无//===================================================== ===================void EXT1_IRQ_ult(void){Counter_buf = *P_TimerB_Data; //save the timerB counter*P_TimerB_Ctrl = 0x0006; //stop timerB*P_INT_Ctrl = *P_INT_Ctrl_New&(~0x0100); //关掉外部中断*P_INT_Clear = 0xffff; //清除中断发生标志EXT1_IRQ_flag = 1; //通知测距程序,外部中断已发生}//===================================================== ===================// 语法格式:unsigned int measure2_ult(void)// 实现功能:补充进行一次远距的测量,以保证能够获取测量结果// 参数:type 选择测距类型,// type=1 中距测距// type=0 短距测距// 返回值:所测得的距离,以厘米为单位//===================================================== ===================unsigned int measure2_ult(unsigned int type){unsigned int Exit_flag = 1;unsigned int uiResoult;unsigned int uiSend_Timer,uiWait_Timer,uiRes_Add;*P_TimerA_Ctrl = 0x0006; //stop TimerA*P_INT_Ctrl = *P_INT_Ctrl_New&(~0x0100); //关掉外部中断__asm("IRQ OFF"); //关掉总中断*P_INT_Clear = 0xffff; //清除掉中断发生标志if(type) //根据type即测距类型,选择不同的测距参数{uiSend_Timer = LONG_SEND_TIMER2;uiWait_Timer = LONG_WAIT_DELAY2;uiRes_Add = LONG_RES_ADD2;}else{uiSend_Timer = LOW_SEND_TIMER2;uiWait_Timer = LOW_WAIT_DELAY2;uiRes_Add = LOW_RES_ADD2;}*P_TimerB_Data = 0xfed2;*P_TimerB_Ctrl = 0x03c0; //enable 40KHz outDelay_ult(uiSend_Timer); //delay for send the signal*P_TimerB_Ctrl = 0x0006; //stop 40KHz out*P_TimerB_Data = 0x0000;*P_TimerB_Ctrl = 0x0001; //TimerB work as a counter at 192KHzwhile(*P_TimerB_Data<uiWait_Timer) //等待一定时间,以避开余波的干扰{*P_Watchdog_Clear = 0x0001;}*P_INT_Ctrl = *P_INT_Ctrl_New|0x0100;//打开外部中断*P_INT_Clear = 0xffff; //清除中断发生标志__asm("IRQ ON"); //打开总中断使能EXT1_IRQ_flag = 0; //TimerA的溢出中断的标志变量置0while(Exit_flag){if(EXT1_IRQ_flag==1) //当该变量在timerA的FIQ中断中被置1时表示接收到了回波{Exit_flag = 0; //exitCounter_buf = Counter_buf+uiRes_Add;//计数值加上一定的调整数据uiResoult = Resoult_ult(Counter_buf);//对计数值进行处理,得出距离值}if(*P_TimerB_Data>10000) //如计数值大于10000,表示超时{Exit_flag = 0; //exituiResoult = 0; //error return data 0*P_TimerB_Ctrl = 0x0006; //stop timerB}}return uiResoult;}//===================================================== ===================// 语法格式:unsigned int measure_Times(unsigned int type)// 实现功能:组合进行共6次的测距程序,包括对6次测量结果的取平均值处理// 参数:type 选择测距类型,// type=1 中距测距// type=0 短距测距// 返回值:所测得的距离,以厘米为单位//===================================================== ===================unsigned int measure_Times(unsigned int type){unsigned int uiResoult=0,uiMeasure_Index=0,i;unsigned int uiTemp_buf[6],uiTemp;unsigned int uiSystem_Clock;for(;uiMeasure_Index<6;uiMeasure_Index++){ //循环进行四次测量uiTemp = measure_ult(type); //进行一次测量,测量类型由type决定if(uiMeasure_Index==0) //如果为本次测量的第一次测距,则直接保存在缓冲区第一个单元uiTemp_buf[0] = uiTemp;else{ //否,则对结果进行比较,进行排序,从大到小排i = uiMeasure_Index;while(i) //以下为排序的代码{if(uiTemp>uiTemp_buf[i-1]){uiTemp_buf[i] = uiTemp_buf[i-1];uiTemp_buf[i-1] = uiTemp;}else{uiTemp_buf[i] = uiTemp;break; //退出排序}i--;}}//两次测量之间的延时等待,利用以下代码软仿真时的cycles数结合设置的CPUCLK 进行计算,大概72msuiSystem_Clock = *P_SystemClock; //将之前的系统时钟的设置用变量保存*P_SystemClock = 0x000b; //设置为FSYS=24.576MHz 分频比为8 for(i=0;i<5;i++){Delay_ult(1000); //调用延时程序*P_Watchdog_Clear = 0x0001;}*P_SystemClock = uiSystem_Clock; //恢复系统时钟设置//此处延时结束}//对6次测距的结果进行处理if(uiTemp_buf[5]==0){ //如果缓冲区中的最小的测距值为0,则采用中间4个数据进行平均uiResoult = uiTemp_buf[1]+uiTemp_buf[2]+uiTemp_buf[3]+uiTemp_buf[4];uiResoult = uiResoult/4;}else{ //否则就取后5个数据进行平均uiResoult =uiTemp_buf[1]+uiTemp_buf[2]+uiTemp_buf[3]+uiTemp_buf[4]+uiTemp_buf[5];uiResoult = uiResoult/5;}return uiResoult;}。