超声波测距仪的设计说明
超声波测距系统的设计详解

超声波测距系统的设计详解超声波测距系统是一种基于超声波测量原理进行距离测量的系统。
它利用超声波在空气中的传播速度较快且能够穿透一定程度的障碍物的特点,通过向目标物体发射超声波并接收反射回来的波形信号,从而计算出目标与传感器之间的距离。
下面将详细介绍超声波测距系统的设计过程。
首先,超声波测距系统的设计需要明确测量的范围和精度要求。
根据需求确定测量距离的最大值和最小值,以及所需的测量精度。
这将有助于选择合适的超声波传感器和测量方法。
其次,选择合适的超声波传感器。
超声波传感器一般包括发射器和接收器两部分,发射器用于发射超声波,接收器用于接收反射回来的波形信号。
传感器的选择应考虑其工作频率、尺寸、功耗等因素。
一般来说,工作频率越高,测距的精度越高,但传感器的尺寸和功耗也会增加。
接下来是超声波信号的发射和接收电路的设计。
发射电路负责产生超声波信号,并将其发送到目标物体上。
接收电路负责接收反射回来的波形信号,并将其转换成可用的电信号。
发射电路常采用谐振频率发射,以提高发射效率和功耗控制。
接收电路则需要设计合适的放大和滤波电路,以增强接收到的信号并去除噪声。
然后是超声波信号的处理和计算。
接收到的波形信号需要进行模数转换和数字信号处理,以获取目标物体与传感器之间的距离。
常见的处理方法包括峰值检测、时差测量、相位比较等。
峰值检测法通过检测波形信号的峰值来判断目标距离;时差测量法通过测量发射和接收信号之间的时间差来计算距离;相位比较法通过比较两个信号的相位差来测量距离。
最后是系统的校准和调试。
校准是调整测距系统的参数,使其达到预定的测量精度。
常见的校准方法包括距离校准和零位校准。
调试是对整个系统进行功能和性能测试,确保其正常工作。
在调试过程中需要注意测距系统与其他系统的干扰和噪声问题,并进行相应的抑制和滤波处理。
总之,超声波测距系统的设计涉及到传感器选择、电路设计、信号处理和系统调试等多个方面。
合理的设计和调试能够保证系统的稳定性和可靠性,从而满足测量的要求。
超声波测距器的设计说明书模板

超声波测距器的设计摘要用单片机控制超声波的发射,通过单片机记录和读取发射超声波和接收到的回波的时间差,进而计算出测量的距离。
文中详细论述了超声波测距的原理、测量电路和程序设计的方案。
关键词:超声波测距仪单片机目录摘要................................................Ⅰ1前言.................................................1 1.1 设计任务.............................................1 1.2本设计的应用意义.....................................1 2总体设计方案.............................................2 2.1设计原理...................................................3 2.2总体设计框图...............................................4 3电路原理的设计...............................................5 3.1超声波传感器....................................5 3.2超声波发射电路设计........................................7 3.3超声波回波接收处理电路设计.................................8 3.4LED显示电路设计...................................9 3.5键盘电路设计.............................................10 4软件设计.............................................12 4.1超声波测距原理........................................124.1.1超声波脉冲法测距原理...................................204.1.2超声波信号测量..................................21 4.2程序框架.......................................174.3测距控制程序...............................18 4.416Hz时基中断处理程序.............................194.6EXT1外部中断程序......................................22 4.7显示刷新程序.........................................23 4.8主程序.........................................23 5系统调试...........................................245.1硬件电路调试.........................................245.2软件程序调试.........................................255.2.1调试的主要方法.................................265.2.2调试中遇到的问题.................................275.3综合调试.............................................28 6 设计总结.......................................................29 致...........................................................30 参考文献.......................................................31 附录A:超声波测距器电路原理图....................................32 附录B:程序清单...................................................321 前言1.1 设计任务本设计实现超声波测距,要求测距围为100cm~500cm,用LED 数码管显示测量结果,以厘米为单位,精度为1 厘米;测量用按键触发:(1)开机时数码管显示000;(2)按下键盘则进行一次测量,并把测量结果显示在LED 数码管上。
毕业设计方案超声波测距仪的设计方案

毕业设计方案超声波测距仪的设计方案1. 引言超声波测距仪是一种常用的测量设备,可以通过发送超声波信号并接收回波来测量距离。
本文将介绍一种基于超声波的测距仪设计方案,用于毕业设计项目。
2. 设计目标本设计方案的主要目标是设计一种精确、稳定、成本效益高的超声波测距仪。
具体而言,设计要求如下:- 测距范围:至少10米- 测量精度:在0.5%以内- 响应时间:小于100毫秒- 成本:尽可能低廉- 可靠性:能够在不同环境条件下稳定工作3. 设计原理超声波测距仪的工作原理是利用超声波在空气中传播速度恒定的特性,通过测量超声波的往返时间来计算距离。
一般来说,超声波测距仪由发射模块和接收模块组成。
发射模块:发射模块用于发送超声波信号,通常由脉冲发生器和超声波发射器组成。
脉冲发生器用于产生短暂的高频脉冲信号,驱动超声波发射器将信号转换成超声波信号并发射出去。
接收模块:接收模块用于接收反射回来的超声波信号,并将其转换成电信号。
接收模块一般由超声波接收器和信号处理电路组成。
超声波接收器将接收到的超声波信号转换成电信号,并通过信号处理电路进行放大、滤波和波形整形等处理,得到可用的测量信号。
距离计算:通过测量超声波的往返时间,可以计算出距离。
超声波在空气中的传播速度约为340米/秒,因此距离可以通过距离等于速度乘以时间的公式来计算。
4. 硬件设计硬件设计是实现超声波测距仪的关键。
以下是硬件设计方案的主要组成部分:超声波发射器和接收器:选择适当的超声波发射器和接收器是关键。
一般来说,发射器和接收器的频率应该相同,常见的频率有40kHz和50kHz。
此外,发射器和接收器需要具有相匹配的电特性,以确保信号的传输和接收的准确性。
脉冲发生器:脉冲发生器的设计应考虑到发射模块的需求,需要产生高频、短暂的脉冲信号。
常用的脉冲发生器电路有多谐振荡电路和555定时器电路等。
信号处理电路:接收到的超声波信号需要进行处理,以便得到可用的测量信号。
超声波测距设计毕业设计

超声波测距设计毕业设计一、引言距离测量在许多领域都具有重要的应用,如工业自动化、机器人导航、汽车防撞等。
超声波测距作为一种非接触式的测量方法,具有测量精度高、响应速度快、成本低等优点,因此在实际工程中得到了广泛的应用。
本次毕业设计旨在设计一种基于超声波的测距系统,实现对目标物体距离的准确测量。
二、超声波测距原理超声波是一种频率高于 20kHz 的机械波,其在空气中的传播速度约为 340m/s。
超声波测距的原理是通过发射超声波脉冲,并测量其从发射到接收的时间间隔,然后根据声速和时间间隔计算出目标物体与传感器之间的距离。
假设发射超声波脉冲的时刻为 t1,接收到回波的时刻为 t2,声速为c,距离为 d,则距离 d 可以通过以下公式计算:d = c ×(t2 t1) / 2三、系统硬件设计(一)超声波发射模块超声波发射模块主要由超声波换能器和驱动电路组成。
超声波换能器将电信号转换为超声波信号发射出去,驱动电路则提供足够的功率和电压来驱动换能器工作。
(二)超声波接收模块超声波接收模块主要由超声波换能器、前置放大器、带通滤波器和比较器组成。
换能器将接收到的超声波信号转换为电信号,前置放大器对信号进行放大,带通滤波器去除噪声和干扰,比较器将信号整形为方波信号。
(三)控制与处理模块控制与处理模块采用单片机作为核心,负责控制超声波的发射和接收,测量时间间隔,并计算距离。
同时,单片机还可以将测量结果通过显示模块进行显示,或者通过通信模块与上位机进行通信。
(四)显示模块显示模块用于显示测量结果,可以采用液晶显示屏(LCD)或数码管。
(五)电源模块电源模块为整个系统提供稳定的电源,包括 5V 和 33V 等不同的电压等级。
四、系统软件设计(一)主程序流程系统上电后,首先进行初始化操作,包括单片机的初始化、定时器的初始化、端口的初始化等。
然后进入主循环,不断地发射超声波脉冲,并等待接收回波。
当接收到回波后,计算距离,并进行显示或通信。
超声测距仪的设计与制作

超声测距仪的设计与制作
超声测距仪(Ultrasonic Distance Meter)是一种通过超声波
来测定物体距离的仪器。
其基本原理是:以超音速在介质中传播的
特点,发送器产生超声波,通过传感器接收到物体反射回来的超声波,并通过处理器将接收到的信息转化为距离数据。
超声波测距的
优点是适用于大多数物体,测量精度高,反应时间快,常用于工业
领域、机器人控制、防盗报警等应用。
下面是超声测距仪的设计与制作步骤:
1. 制定设计方案:首先确定设计的目标、功能和应用范围。
确
定测量范围、分辨率、测量精度和可靠性要求,选择适当的传感器、发声器和处理器等元件和模块。
2. 确定电路原理图和PCB板图:采用EDA软件设计电路原理图
和PCB板图,按照元器件的连接方式设计电路,选择合适的PCB板,进行布线、连接、焊接等工作。
3. 组装调试:按照PCB板图进行组装,连接电源及显示器,并
进行初步测试,包括实际测量距离与显示距离的比对,测量精度的
测试,以及各种异常处理。
4. 调整优化:主要是对电路和程序进行优化以保证测距精度和
响应速度,同时还要考虑功耗、噪音、温度和湿度等因素的影响。
5. 装箱上线:将电路和PCB板固定在合适的外壳中,加上电池、电源适配器、传感器和发声器等部件,修整外观和按钮等位置,进
行最后的功能测试和运行稳定性测试。
以上是超声测距仪的设计和制作步骤,需要选用适合的元器件和材料,按照标准的工艺流程,进行精密的组装和调试,保证生产出稳定、可靠、精准的超声测距仪。
超声波测距设计说明

目录1方案选择的论证和选择 (1)1.1 设计方案一 (1)1.2 设计方案二 (2)1.3 设计方案三 (2)2工作原理 (2)3部分芯片介绍 (3)3.1 AT89S52的简介 (4)3.1.1 引脚信号介绍 (4)3.1.2 P3口的第二功能 (5)3.1.3 AT89S52的总线结构 (5)3.2 温度传感器DS18B20 (6)3.2.1 温度传感器(DS18B20)的引脚分布图及其功能 (6)3.2.2 单线(1-wire)技术 (7)3.2.3 DS18B20有两种供电方式:寄生电源和外部电源 (7)3.3 LCD显示器 (10)3.3.1字符型液晶显示模块RT-1602C的部结构 (10)3.3.2 指令格式与指令功能 (11)3.3.3 LCD显示器的初始化 (12)4 单元电路设计说明 (15)4.1 电源设计 (15)4.1.1 整流滤波电路设计 (16)4.1.2 稳压电路设计 (16)4.2 单片机时钟电路 (17)4.3 单片机复位电路 (18)4.4 单片机键盘电路 (19)4.5 超声波发射电路 (20)4.6 超声波接收电路 (20)4.7 单片机最小系统控制运算模块总原理图 (22)5 软件设计流程图 (22)5.1 主流程图 (23)5.2 温度读取程序 (23)5.3 LCD现实流程图 (24)5.4 外中断服务程序 (25)5.5 超声波发射接收程序 (25)5.6 键少子程序 (26)6 调试说明 (27)6.1 软件调试 (27)6.2 硬件调试 (28)7 误差分析 (28)7.1 超声波回波声强的影响 (28)7.2 超声波波束入射角的影响 (29)7.3 超声波传播速度的影响 (30)7.4 实测比较 (30)8 设计心得 (30)参考资料 (32)致 (33)附录 (34)1 总原理图 (34)2 PCB图 (35)3 程序清单 (35)4 元件清单 (44)1 方案选择的论证和选择1.1 设计方案一采用单片机来控制的超声波测距仪是先由单片机产生一个信号,经过信号线,把信号引入到与超声波发射器相连的信号引脚上,再由超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。
超声波测距系统设计

超声波测距系统设计一、设计原理超声波测距原理基于声波的传播速度和时间的关系。
声波在空气中传播的速度约为343m/s。
当声波发射到目标物体上后,部分声波会被目标物体反射回来。
通过测量声波从发射到接收的时间差,再乘以声速即可计算出目标物体与传感器的距离。
二、硬件设计1.超声波发射器:超声波发射器是实现超声波测距的关键部件,它负责产生超声波脉冲并将其发射出去。
常用的超声波发射器是压电传感器,它具有快速响应、高灵敏度等特点。
2.超声波接收器:超声波接收器用于接收从目标物体反射回来的超声波,并将其转化为电信号。
同样,压电传感器也可以用作超声波接收器。
3.控制电路:控制电路负责控制超声波发射器和接收器的工作。
例如,它可以通过控制超声波发射器的工作时间来产生超声波脉冲。
同时,控制电路还需要接收超声波接收器输出的电信号,并通过计时器来测量声波从发射到接收的时间差。
4.显示屏:显示屏用于显示测距结果,通过显示屏可以直观地观察到目标物体与传感器的距离。
三、软件设计1.信号处理:在接收到超声波接收器输出的电信号后,需要对信号进行处理。
通常情况下,控制电路会将接收到的信号由模拟信号转换为数字信号。
然后,可以使用特定的算法对数字信号进行处理,例如滤波、峰值检测等,以获取稳定的距离数据。
2.距离计算:根据声波从发射到接收的时间差和声速,可以计算出目标物体与传感器的距离。
计算公式为:距离=速度×时间差。
3.结果显示:最后,将计算得到的距离结果显示在屏幕上,用户可以直接观察到距离结果。
四、总结超声波测距系统是一种简单、实用的测距技术。
通过合理的硬件设计和严密的软件设计,可以实现可靠、准确的测距功能。
同时,超声波测距系统还具有成本低、测量范围广等优点,被广泛应用于自动控制、车辆定位和智能机器人等领域。
超声波测距仪课程设计说明书 精品

长沙学院《单片机原理及应用》课程设计说明书题目超声波测距仪系(部) 电信系专业(班级) 电气一班姓名周鹏学号2010042113指导教师刘辉、王新辉起止日期2013.6.10—6.21《单片机原理及应用》课程设计任务书21系(部):电信系专业:2010级电气工程指导教师:王新辉、刘辉课题名称超声波测距仪设计设计内容及要求(1)课题内容:设计一个以 STC89C52单片机为核心控制的超声波测距仪。
功能要求:1.测量距离范围要求为0.10~5.00m;2.测量精度为1cm;3.用12864液晶屏显示相关信息,液晶屏的第一行显示“超声波测距仪”,第二行显示设计者姓名和学号,第三行显示测量的距离值。
(2)要求:完成该系统的硬件和软件的设计,用单片机开发板进行验证。
最后就课程设计本身提交一篇课程设计说明书。
设计工作量1、汇编或C51语言程序设计;2、程序调试;3、在单片机开发板上进行下载调试;4、提交一份完整的课程设计说明书,包括设计原理、程序设计、程序分析、调试过程,参考文献、设计总结等。
进度安排起止日期(或时间量)设计内容(或预期目标)备注第一天课题介绍,答疑,收集材料,C51介绍第二天设计方案论证,练习编写C51程序第三天~第六天程序设计第六天~第八天程序调试、仿真第九天~第十天系统测试并编写设计说明书教研室意见年月日系(部)主管领导意见年月日长沙学院课程设计鉴定表姓名学号专业班级设计题目指导教师指导教师意见:评定等级:教师签名:日期:答辩小组意见:评定等级:答辩小组长签名:日期:教研室意见:教研室主任签名:日期:系(部)意见:系主任签名:日期:说明课程设计成绩分“优秀”、“良好”、“及格”、“不及格”四类;目录摘要 (2)1、基本原理 (3)2、方案论证 (3)3、系统硬件设计 (3)3.1 STC89C52外围电路设计 (4)3.2 超声波测距模块电路设计 (5)3.3 显示电路设计 (7)4、系统软件设计 (7)4.1 系统软件设计说明 (7)4.2编程语言的选择 (8)4.3超声波测距仪的算法设计 (8)4.4 超声波发生子程序和超声波接收中断程序设计 (8)4.5 显示子程序设计 (9)4.6主程序流程图 (9)5、设计结果及分析 (9)6、使用说明 (11)7、课程设计体会 (11)参考文献 (12)附录:程序清单 (13)摘要由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
题目:超声波测距仪的设计超声波测距仪的设计一、设计目的:以51单片机为主控制器,利用超声波模块HC-SR04,设计出一套可在数码管上实时显示障碍物距离的超声波测距仪。
通过该设计的制作,更为深入的了解51的工作原理,特别是51的中断系统及定时器/计数器的应用;掌握数码管动态扫描显示的方法和超声波传感器测距的原理及方法,学会搭建51的最小系统及一些简单外围电路(LED显示电路)。
从中提高电路的实际设计、焊接、检错、排错能力,并学会仿真及软件调试的基本方法。
二、设计要求:设计一个超声波测距仪。
要求:1.能在数码管上实时显示障碍物的实际距离;2.所测距离大于2cm小于300cm,精度2mm。
三、设计器材:STC89C52RC单片机HC-SR04超声波模块SM410561D3B四位的共阳数码管9014三极管(4)按键(1)电容(30PF2,10UF1)排阻(10K),万用板,电烙铁,万用表,5V直流稳压电源,镊子,钳子,导线及焊锡若干,电阻(200欧5)。
四、设计原理及设计方案:(一)超声波测距原理超声测距仪是根据超声波遇到障碍物反射回来的特性进行测量的。
超声波发射器向某一方向发射超声波,在发射同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即中断停止计时。
通过不断检测产生波发射后遇到障碍物所反射的回波,从而测出发射超声波和接收到回波的时间差T,然后求出距离L。
基本的测距公式为:L=(△t/2)*C式中 L——要测的距离T——发射波和反射波之间的时间间隔C——超声波在空气中的声速,常温下取为344m/s声速确定后,只要测出超声波往返的时间,即可求得L。
根据本次设计所要求的测量距离的围及测量精度,我们选用的是HC-SR04超声波测距模块。
(如下图所示)。
此模块已将发射电路和接收电路集成好了,硬件上不必再自行设计繁复的发射及接收电路,软件上也无需再通过定时器产生40Khz的方波引起压电陶瓷共振从而产生超声波。
在使用时,只要在控制端‘Trig’发一个大于15us宽度的高电平,就可以在接收端‘Echo’等待高电平输出。
单片机一旦检测到有输出就打开定时器开始计时。
当此口变为低电平时就停止计时并读出定时器的值,此值就为此次测距的时间,再根据传播速度方可算出障碍物的距离。
(二)超声波测距模块HC-SR04简要介绍HC-SR04超声波测距模块的主要技术参数使用方法如下所述:1. 主要技术参数:①使用电压:DC5V②静态电流:小于2mA③电平输出:高5V④电平输出:低0V⑤感应角度:不大于15度⑥探测距离:2cm-300cm HC-SR04超声波测距模块实物图⑦高精度:可达2mm2. 接线方式:VCC、trig(控制端)、 echo(接收端)、 GND使用方法:给Trig端发一个15uS以上的高电平,就可以在接收口Echo 端等待高电平输出。
一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离。
3.工作原理:①采用IO触发测距,给至少10us的高电平信号 (在我们的程序中我们为了确保有效触发,给了约持续15us时间宽度的高电平);②模块自动发送8个40khz的方波,自动检测是否有信号返回;③有信号返回,通过Echo输出一高电平,高电平持续的时间就是超声波从发射到返回的时间.测试距离=(高电平时间*声速(344M/S))/2;(三)总体设计方案:以51单片机作为主控制器,在超声波模块HC-SR04的‘Trig’端加一个大于10us的高电平,本次设计中我们为了确保有效触发,程序中设置了约为15us的高电平进行触发。
触发发射端产生超声波,同时在接收端(‘Echo’端)等待高电平的输出,一旦检测到有高电平的输出就打开定时器0进行计时。
根据所给超声波模块的技术资料可知:‘Echo’端高电平持续的时间就是超声波从发射到返回的时间。
当超声波遇到障碍物,回波被接收端接收到后,‘Echo’端变为低电平。
此时关闭定时器0(令TR=0),读出定时器的值。
这个值即为超声波的传播时间(单位为us)。
根据声波在空气中的传播速度,方可算出距离。
【测试距离≈(高电平时间*声速(344M/S))/2】将此距离进行处理,在数码管上利用动态扫描法实时显示。
系统的结构框图:我们将整个系统划分为:超声波模块、显示模块,以及51单片机外围工作电路模块。
(四)动态显示模块:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。
通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。
在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。
在本次设计中,我们选用P0口作为‘段码’,连接SM410561D3B ‘a,b,c,d,e,f,g,dp’,每一段的亮灭。
选用P2.4~P2.7分别对应‘位码’,即连接 SM410561的‘S1,S2,S3,S4’分别控制每一位的亮灭。
‘S1,S2,S3,S4’相当于是每一段的COM端,由于是共阳极,只有某一位对应的COM 端为‘1’时,所送的‘段码’对该端来说才是有效的。
仿真电路图(五)硬件整体设计方案:我们在硬件设计上主要包括以下几个模块的设计:(六)软件设计方案:程序如下:uint time=0; //探测时间unsigned long S=0; //探测距离,注意是长整型//uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,//0x6d,0x7d,0x07,0x7f,0x6f,0x40}; //共阳数码管uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf};sbit echo=P3^7; //接收端sbit trig=P3^6; //发射端sbit SMG_q = P2^4; //定义数码管阳级控制脚(千位)sbit SMG_b = P2^5; //定义数码管阳级控制脚(百位)sbit SMG_s = P2^6; //定义数码管阳级控制脚(十位)sbit SMG_g = P2^7; //定义数码管阳级控制脚(个位)uchar flag,a; //标志位/*函数名称:init()**输入参数:void**输出参数:void**函数功能:初始化超声波测距仪,定时器,中断*/void init(){echo=0;trig=0;flag=1;qian=10;bai=10;shi=10;ge=10; //数码管显示- - - -TMOD=0x01; //设T0为方式1TH0=0;TL0=0;ET0=1; //允许T0中断TR0=0;EA=1; //开启总中断}/*函数名称:delay()**输入参数:unsigned char cnt**输出参数:void**函数功能:延时函数*/void delay(unsigned char cnt) //大约延时2*cnt 微妙{while(--cnt);}/*函数名称:display()**输入参数:uchar qian, uchar bai, uchar shi, uchar ge**输出参数:void**函数功能:数码管显示模块*/void display(uchar qian,uchar bai,uchar shi,uchar ge){SMG_q=1; //选择千位数码管P0=table[qian]; //查找"1"定义好的数码管段值与P0口输出,显示相应的1delay(100); //加入短暂延时P0=0XFF; //清除数码管显示,因是共阳型,所以不是0SMG_q=0; //关闭千位数码管SMG_b=1; //选择百位数码管P0=table[bai]; //查找"2"定义好的数码管段值与P0口输出,显示相应的2delay(100); //加入短暂延时P0=0XFF; //清除数码管显示,因是共阳型,所以不是0SMG_b=0; //关闭百位数码管SMG_s=1; //选择十位数码管P0=table[shi]&0x7f; //查找"2"定义好的数码管段值与P0口输出,显示相应的2delay(100); //加入短暂延时P0=0XFF; //清除数码管显示,因是共阳型,所以不是0SMG_s=0; //关闭十位数码管SMG_g=1; //选择个位数码管P0=table[ge]; //查找"2"定义好的数码管段值与P0口输出,显示相应的2delay(100); //加入短暂延时P0=0XFF; //清除数码管显示,因是共阳型,所以不是0SMG_g=0; //关闭个位数码管}/*函数名称:startmodule()**输入参数:void**输出参数:void**函数功能:超声波测距仪触发模块*/void startmodule(){trig=1; //15us 启动一次模块_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();trig=0;delay(10);}/*函数名称:main()**输入参数:void**输出参数:void**函数功能:控制模块*/void main(){init(); //初始化子程序while(1){startmodule();while(!echo) //起始为0,当为1时,开始计时五、设计中遇到的问题及解决办法:(1)在课程设计初期,我们组在一个现成的电路板(只有编码和位选与我们所要设计的作品的接法不同)上进行编写和调试程序。
于此同时,也开始在prteus中搭建电路:我们选用P0口作为‘段码’,连接SM410561D3B ‘a,b,c,d,e,f,g,dp’,每一段的亮灭。