基于单片机的超声波测距仪课设说明书.doc

上传人:李司机 文档编号:1131796 上传时间:2022-06-30 格式:DOC 页数:23 大小:268.35KB
返回 下载 相关 举报
基于单片机的超声波测距仪课设说明书.doc_第1页
第1页 / 共23页
基于单片机的超声波测距仪课设说明书.doc_第2页
第2页 / 共23页
基于单片机的超声波测距仪课设说明书.doc_第3页
第3页 / 共23页
基于单片机的超声波测距仪课设说明书.doc_第4页
第4页 / 共23页
基于单片机的超声波测距仪课设说明书.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《基于单片机的超声波测距仪课设说明书.doc》由会员分享,可在线阅读,更多相关《基于单片机的超声波测距仪课设说明书.doc(23页珍藏版)》请在三一办公上搜索。

1、一、摘 要随着科学技术的快速发展,超声波将在测距仪中的应用越来越广。但就目前技术水平来说,人们可以具体利用的测距技术还十分有限,因此,这是一个正在蓬勃发展而又有无限前景的技术及产业领域。展望未来,超声波测距仪作为一种新型的非常重要有用的工具在各方面都将有很大的发展空间,它将朝着更加高定位高精度的方向发展,以满足日益发展的社会需求,如声纳的发展趋势基本为:研制具有更高定位精度的被动测距声纳,以满足水中武器实施全隐蔽攻击的需要;继续发展采用低频线谱检测的潜艇拖曳线列阵声纳,实现超远程的被动探测和识别;研制更适合于浅海工作的潜艇声纳,特别是解决浅海水中目标识别问题;大力降低潜艇自噪声,改善潜艇声纳的

2、工作环境。无庸置疑,未来的超声波测距仪将与自动化智能化接轨,与其他的测距仪集成和融合,形成多测距仪。随着测距仪的技术进步,测距仪将从具有单纯判断功能发展到具有学习功能,最终发展到具有创造力。在新的世纪里,面貌一新的测距仪将发挥更大的作用。本设计采用以AT89C51单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。整个电路采用模块化设计,由主程序、中断程序、发射子程序、接收子程序、显示子程序等模块组成。各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。二、设计基础2.1 单片机介绍单

3、片机就是将计算机的中央处理器CPU、随机存取存储器RAM、只读存储器ROM、定时器/计数器和多种输入/输出接口I/O以及相互连接的总线BUS等集成在一块芯片上,形成了芯片级的计算机1。一块单片机芯片就是一台计算机。由于单片机的这种特殊的结构形式,在某些应用领域中,它承担了大中型计算机和通用微型计算机无法完成的一些工作。使其具有很多显著的优点和特点,因此在各个领域中都得到了迅猛的发展。单片机的特点归纳起来有以下几个方面。 具有优异的性价比 单片机尽可能地把应用所需的存储器,各种功能的 I/O 接口集成在一块芯片,因而其性能很高,而价格却相对较低廉,即性价比很高。 集成度高、体积小、可靠性高 单片

4、机把各种功能部件集成在一块芯片上,因而集成度高,均为大规模或超大规模集成电路。又部采用总线结构,减少了芯片之间的连线,这大大提高了单片机的可靠性与抗干扰能力。同时,其体积小,对于强磁场环境易于采取屏蔽措施,适合于在恶劣环境下工作。 控制功能强 单片机非常适用于专门的控制用途。为了满足工业控制要求,一般单片机的指令系统中有极丰富的转移指令,I/O 口的逻辑操作指令以及位操作指令。其逻辑控制功能及运行速度均高于同一档次的微机。 低电压、低功耗 单片机大量用于携带式产品和家用消费类产品,低电压和低功耗尤为重要。目前,许多单片机已可在 2.2V 电压下运行,有的已能在 1.2V 或 0.9V 下工作,

5、功耗降至A 级,一粒钮扣电池就可长期使用2。图4-1 STC89C52引脚STC89C52芯片共40引脚:1-8脚: 通用I/O接口P1.0-P1.7;9脚: RET复位键10-11脚:RXD串口输入, TXD串口输出;12-19:I/O P3接口 ; 18,19: 晶振谐振器 20 地线;21-28 :P2接口高8位地址总线;29:PSEN 片外ROM选通端;单片机对片外ROM操作时29脚输出低电平;30:ALE/PROG 地址锁存器;31:EAROM取指令控制器高电平片取低电平片外取;32-39:P0.7-P0.0注意此接口的顺序与其他I/O接口不同 与引脚号的排列顺序相反;40:电源+5

6、V。其引脚如图4-1所示。管脚说明:VCC供电电压。GND接地。P0口可作为地址/数据分时复用总线和通用I/O接口。单片机系统扩展外存储器时,P0口作为地址/数据分时复用总线使用;系统未扩展片外存储器时,P0口作为准双向通用I/O接口使用。P0口输出时能驱动8个LETTL负载,即输出电流不 晓宇800。P1口带部上拉电阻的8位双向I/O口,通用I/O接口有输入、输出、端口操作3中工作方式。P2口带部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写1时,其管脚被部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于部上拉的缘故

7、。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址1时,它利用部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口除了作为通用的准双向I/O接口使用外,每一根线还具有第二种功能,详细如表2-1所示。表2-1 P3口的特殊功能说明引脚 替代功能说明P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7RXDTXDINT0INT1T0T1WRRD串行数据接收串行数据发送外部中断0申请外部中断1申请定时器0外部事件计数输入定时器1外部事件计数输入

8、外部RAM写选通外部RAM读选通RST复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。XTAL1反向振荡放大器的输入及部时钟工作电路的输入。XTAL2来自反向振荡器的输出。STC89C52的功能特性描述低功耗、高性能的CMOS 8位微控制器,具有8K在系统可编程Flash存储器。使用高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在线系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。STC89C52具有以下标

9、准功能: 8k字节Flash,256字节RAM,32 位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片晶振及时钟电路。另外,STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止1。8位微控制器 8K字节在系统可编程 Flash。2.2 单片机系统外围电路单片机的复位电路:在给单片机通电时,单片机部的电路处于不确定的工作状态,为使单片机工作时部电路有一

10、个确定的工作状态,单片机在工作之前要有一个复位的过程。对于AT89C52单片机而言,通常在其RST引脚上保持10mS以上的高电平就能使单片机完全复位。这种复位电路的原理是通电时,电容两端相当于短路,RST引脚上为高电平,然后电源通过电阻R1对电容C1充电,RST端电压慢慢下降,降到一定电压值以下,即为低电平,单片机开始正常工作。如图2-3所示。根据应用的要求,复位操作通常由上电复位和开关复位2种基本形式。本系统使用的复位电路是在基本复位电路的基础上所改进的一种混合方法,即做到了上电复位,又可以在发生预料之外的问题时,随时进行开关复位单片机2。单片机复位后的状态:表2-2 8051单片机复位后特

11、殊功能寄存器的初始状态特殊功能寄存器初始状态特殊功能寄存器初始状态ABPSWSPDPLDPHP0P3IPIE00H00H00H07H00H00HFFH*00000B0*00000BTMODTCONTH0TL0TH1TL1SBUFSCONPCON00H00H00H00H00H00H不定00H0*B注:表中的符号*为随机状态单片机的复位操作使单片机进入初始化过程,其中包括使程序计数器PC0000H,P0P3FFH,SP07H,其他寄存器处于零。这表明程序从0000H地址单元开始执行。单片机复位后不改变片RAM区中的容,21个特殊功能寄存器复位后的状态如表2-2所示。单片机的时钟电路:在AT80C5

12、2单片机部,有一个高增益反相放大器,用于构成振荡器。其输入端接至单片机部,即XTAL1引脚;其输出端接至单片机外部,即XTAL2。在XTAL1和 XTAL2两端跨接一个晶振、两个电容,构成一个稳定自激式振荡电路。晶振一般取11.0592MHz,两个电容通常取18-47pF。如图2-2所示。图2-3复位电路图2-2 单片机的时钟电路2.3 超声波测距原理超声波测距的基本工作原理是测量超声波在空气中的传播时间,由超声波传播时间和传播速度来确定距离障碍物的距离,即脉冲-回波方式。该方式的基本电路框图如图2-4 所示。由发射传感器、发射电路、接收传感器、接收放大电路、回波信号处理电路和单片机控制电路等

13、几部分组成。发射电路是一个工作频率为40 khz的多谐振荡器,多谐振荡器受单片机控制,产生一定数量的发射脉冲,用于驱动超声波发射传感器,并激励出超声波在空气中传播,遇障碍物反射而返回。超声波接收传感器通过压电转换的原理,将由障碍物返回的回波信号转换成电信号,由于该信号幅度较小,因此须由低噪声放大、40khz带通滤波电路将回波信号放大到一定幅度,且干扰成分较少,并由回波处理电路转换成方波信号,送至单片机系统进行时间测量和距离的显示。超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播

14、速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离,即:s=ct/2。在启动发射电路的同时启动单片机部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波时,接收电路输出端产生一个负跳变,在INT0端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离,进而显示距离。根据设计要求并综合各方面因素,可以采用STC89C52单片机作为主控制器,用动态扫描法实现数码显示,超声波驱动信号用单片机的定时器完成。图2-4 超声波测距原理框图2.4 CX20106A芯片介绍CX20106A红外线遥控接收前

15、置放大电路,多适用于电视机。部电路由前置放大器,自动偏置电平控制电路ABLC、限幅放大器、带通滤波器、峰值检波器和波形整形电路等组成。CX20106A是CX20106的改进型,二者之间的主要差别在于电参数略有不同。CX20106A也有不少用于超声波测试。引脚注释如下:l脚:超声波信号输入端,该脚的输入阻抗约为40k。2脚:该脚与GND之间连接RC串联网络,它们是负反馈串联网络的一个组成部分,改变它们的数值能改变前置放大器的增益和频率特性。增大电阻R或减小C,将使负反馈量增大,放大倍数下降,反之则放大倍数增大。但C的改变会影响到频率特性,一般在实际使用中不必改动,推荐选用参数为R=4.7,C=3

16、.3F。3脚:该脚与GND之间连接检波电容,电容量大为平均值检波,瞬间相应灵敏度低;若容量小,则为峰值检波,瞬间相应灵敏度高,但检波输出的脉冲宽度变动大,易造成误动作,推荐参数为3.3F。4脚:接地端。5脚:该脚与电源端VCC接入一个电阻,用以设置带通滤波器的中心频率f0,阻值越大,中心频率越低。例如,取R=200k时,fn42kHz,若取R=220k,则中心频率f038kHz。6脚: 该脚与GND之间接入一个积分电容,标准值为330pF,如果该电容取得太大,会使探测距离变短。7脚:遥控命令输出端,它是集电极开路的输出方式,因此该引脚必须接上一个上拉电阻到电源端,该电阻推荐阻值为22k,没有接

17、收信号时该端输出为高电平,有信号时则会下降。8脚: 电源正极,4.5V5V。 三、系统设计3.1 总体方案设计介绍超声波测距利用超声波指向性强、能量消耗缓慢、传播距离较远等优点,即用超声波发射器向某一方向发送超声波,同时在发射的时候开始计时,在超声波遇到障碍物的时候反射回来,超声波接收器在接收到反射回来的超声波时,停止计时。设超声波在空气中的传播速度为V,在空气中的传播时间为T,与障碍物的距离为S,则Error! No bookmark name given.S=VT/2,这样可以测出超声波发射器与障碍物之间的距离,然后在数码管上显示出来。其工作机理是依据压电材料的正逆压电效应,利用逆压电效应

18、产生超声波,即逆压电效应是在压电材料上加上某种特定频率的交变正弦信号,材料就会产生随所加电压的变化规律而变化的机械形变,这种机械形变推动周围介质振动,产生疏密相间的机械波,如果其振动频率在超声围,这种机械波就是超声波。本文所设计的超声波测距仪主要由STC89C52单片机、超声波发射电路、超声波接收放大电路、显示电路组成。首先由单片机驱动产生40KHZ方波,由超声波发射探头发送出去,在遇到障碍物反射回来时由超声波接收探头检测到信号,然后经过滤波、放大、整形之后送入单片机进行计算,把计算结果输出到数码管上。超声波发生器可以分为两大类:一类是用电气方式产生超声波;另一类是用机械方式产生超声波。电气方

19、式包括压电型、电动型等;机械方式有加尔统笛、液 和气流旋笛等。它们所产生的超声波的频率,功率和声波特性各不相同,因而用途也各不相同。目前在近距离测量方面较为常用的是压电式超声波换能器。根据设计要求并综合各方面因素,本例决定采用STC89C2单片机作为主控制器,用动态扫描法实现数码显示,超声波驱动信号用单片机的定时器完成。超声波测距器系统设计如图3-1所示。超声波接收 单片机控制器超声波发送数码显示扫描驱动图3-1 超声波测距系统设计框图3.2 单片机时钟电路时钟电路用于产生单片机工作所需要的时钟信号,而时序所研究的是指令执行中各信号之间的相互关系。单片机本身就如一个复杂的同步时序电路,为了保证

20、同步工作方式的实现,电路应在唯一的时钟信号控制下严格地作。1时钟信号的产生单片机部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。电容器C1和C2的作用是稳定频率和快速起振,电容值的围在5pF30pF,典型值为30pF。晶振的频率通常选择两种6MHz和12MHz。只要在单片机的XTAL1和XTAL2引脚外接晶体振荡器就构成了自激振荡器并在单片机部产生时钟脉冲信号。2时钟振荡电路如图3-2所示。图3-2 时钟电路12MHz3.3 单片机复位电路复位电路是使单片机的CP

21、U或系统中的其他部件处于某一确定的初始状态,并从这个状态开始工作。1单片机常见的复位电路通常单片机复位电路有两种:上电复位电路和按键复位电路。上电复位电路:上电复位是单片机上电时复位操作,保证单片机上电后立即进入规定的复位状态。它利用的是电容充电的原理来实现的。按键复位电路:它不仅具有上电复位电路的功能,同时它的操作比上电复位电路的操作要简单的多。如果要实现复位的话,只要按下RESET键即可。它主要是利用电阻的分压来实现的在此设计中,采用的按键复位电路。按键复位电路如图3-3所示:图3-3 复位电路图2复位电路工作原理上电复位要求接通电源后,单片机自动实现复位操作。上电瞬间RESET引脚获得高

22、电平,随着电容的充电,RERST引脚的高电平将逐渐下降。RERST引脚的高电平只要能保持足够的时间2个机器周期,单片机就可以进行复位操作。上电与按键均有效的复位电路不仅在上电时可以自动复位,而且在单片机运行期间,利用按键也可以完成复位操作。故本设计选用第二种上电复位与按键均有效的电路。3.4 超声波发射电路图3-4 超声波发射原理图 图3-5 NE555发射波形图发射电路由555定时器构成的高频振荡器产生40kHz方波,经过驱动电路驱动超声波发生器发出一簇信号,同时开始计时。本电路中采用555定时器构成振荡电路,2脚6脚及地之间的电容不断的进行充、放电,导致555时基电路处于置位与复位反复交替

23、的状态,即输出端3脚交替输出高电平与低电平,输出波形为近似矩形波,此电路也称为自激多谐振荡器。电路初次通电时,由于电容C1两端电压不能突变,555的2脚为低电平,555时基电路置位,即3脚输出高电平,部放电晶体管截止,7脚被悬空,此时正电源VDD通过电阻R1、R2向电容C1充电,使C1两端电压不断升高,约经时间TH,C1两端电压即阈值端6脚电平升至2VDD/3时,555时基电路翻转复位,3脚输出低电平,同时部放电晶体管导通,7脚也为低电平,此时电容C1储存电荷将通过R2向7脚放电,使C1两端电压即555的触发端2脚电平不断下降,约经TL时间,电压降至VDD/3时,555时基电路又翻转置位,3脚

24、又输出高电平,7脚再次被悬空,正电源又通过R1, R2向C1充电,如此周而复始,电容C1不断处于充电与放电状态,电路引起振荡,3脚将交替输出高电平和低电平。3.5 超声波接收电路图3-6 超声波接收原理图超声波接收是用来将探测波回波的声能转换为电信号,实现超声波回波的接收。在被测物距离较远的情况下回波很弱,要求将信号多次放大,放大后的信号整形、比较、触发后产生中断信号,此中断信号向CPU发中断请求,执行中断服务程序中,读取计时器的定时值。此电路由信号放大部分,检波部分,电压比较部分和信号保持部分组成,收到的信号经过两级放大,再通过倍压式峰值检波电路检波,得到一个基本稳定的信号,再通过与电压比较

25、器比较,若信号电压大于参考电压,则输出高电平,若低于参考电压则输出为低电平,若输出高电平,则RS触发器触发,输出高电平,且一直保持下去,直到单片机给出控制信号,触发器回到低电平状态。超声波从发射到接收时间间距的测量,是由单片机部的计数器如T0来完成的 。超声波从发射到接收的时间间隔的测量, 是由单片机部的计数器 来完成的。在CPU 停止发送脉冲群后, 由于电阻尼, 换能器不会立即停止发送超声波, 在一定时间仍然发送。这段时间的存在使系统不能够测量比较近的物体, 形成所谓的盲区, 需要对盲区时间产生的信号进行屏蔽, 不同性能的超声波换能器的盲区有所差异, 以一个通道工作的时序为例进行说明, 如图

26、3-7 所示。图3-7 一个通道的工作时序四、设计流程图4.1 主流程图图4-1 主程序流程图开始返回DPL除100,商送41H余数除10,商送42H余数送43HDPH等于1?41H、42H、42H分别加2、5、6YN4.2 数据计算流程图4-2 数据计算流程开始返回41H内容查表,送P0口选择位码,送P2口42H内容查表,送P0口选择位码,送P2口延时43H内容查表,送P0口选择位码,送P2口延时延时4.3 显示流程图4-3 显示流程五、误差分析5.1 超声波回波声强的影响回波的声强与障碍物距离的远近有直接关系, 实际测量时, 不一定是第一个回波的过零点触发, 其原理如图5-1 所示。这种误

27、差不能从根本上消除, 但是可以通过根据障碍物的距离调整脉冲群的脉冲个数以及动态调整比较电压来减小这种误差。另一方面将求距离公式后加一个补偿系数来补偿计时误差, 。图5-1 脉冲个数与回波声强对计时影响示意图5.2 超声波波束入射角的影响如果系统是用来测量面与点的距离, 则被测物、换能器及换能器所在测量参考平面三者之间存在一个几何角度, 即反射波入射到换能器的角度, 当这角度不是90时, 系统测量到的距离是障碍物与换能器之间的距离而不是和量参考平面之间的距离, 这就会造成测量误差, 如图5-2 所示。图5-2 超声波回波入射角影响分析图当障碍物的距离较小时, 这个误差就会成为近距离时的主要误差来

28、源。可以用多个换能器同时测量, 利用几何关系来计算得出实际距离, 消除这种误差。7.17.2式中-换能器a 、b到被测物的距离-换能器a、b之间的距离-被测物到测量的距离5.3 超声波传播速度的影响稳定准确的声波传播速度是保证测量精度的必要条件, 传播介质的温度、压力及密度对声速都产生直接影响。采用声速预置和传播介质温度测量结合的方法对声速进行修正, 可有效地降低温度变化产生的误差。在对距离的精确度要求不高的应用中可以不进行温度补偿, 选择室温20左右时的声速340m/s作为固定参数, 当温度在- 10 40 之间变化时声速误差在5% 之间。如果在室外测量, 对于季节温差大的地区, 还可以采用

29、预置该地区12 个月的统计温度, 用以对温度进行补偿, 既可提高精度, 又不增加成本。在实际应用中可以根据系统测量精度要求, 采用合理的补偿手段。5.4 实测比实测值测量值0.33m0.35m0.64m066m0.82m0.83m0.99m1.00mm1.21mm1.35m1.60m1.58m六、心得体会 在本次设计中,我们广泛借鉴了各种设计的优点,充分考虑了整个设计中的各个环节。包括产生40KHz的方波,在接收电路中,对所接收方波进行滤波、放大、整形等步骤。但由于条件和技术所限,对于很多以上所分析的在发射和接收过程中所产生的误差没有得到有效的校正。比如温度误差、硬件电路误差等。在我们为期一个

30、星期的设计中,我们用到了以前学到的很多知识,比如电工、单片机、和汇编语言等。这使我们意识到,任何一件产品的产生,都不是单一知识所能实现的。而且在电路的设计和程序的编制过程中,出现了很多意想不到的错误,让我们措手不及,有些甚至是一些非常低级的错误,但是这些错误也同样让我们获益非浅,它使我们意识到,研究是一个非常严肃的过程,来不得半点马虎。必须有一个严谨的态度,加上100的努力才有可能获得成功的喜悦。总之,在本课题的设计过程中尽管走了很多的弯路,但是还是学到了不少知识,从中受益匪浅。了解了超声波传感器的原理,学会了各种放大电路的分析、设计,也掌握了单片机的开发过程中所用到的开发方法和工具。动手能力

31、与自学能力得到了锻炼与提高,对待事物的态度也发生了变化。理论总是离不开实践的,设计制作过程中,盲目地追寻理论知识根本不足以解决任何问题,一味的死研究课本是不会真正掌握单片机的。只有真正动手去做才能发现问题,解决问题,提高能力。最后,本次课程设计的完成,离不开指导老师在整个过程中的悉心指导,也离不开同学们在焊接和调试过程中的大力支持,在这里对他们表示真诚的感和由衷的敬意。参考资料1 单片机原理与应用设计.毅刚、喜元著.电子工业.20XX2MCS-51 系列单片机应用系统设计系统配置与接口技术. 何立民著.航空航天大学.1990年3单片机应用技术 守义著.电子科技大学.20XX4单片机C程序设计指

32、导. 光飞著.航空航天大学,20XX附 录OUT BIT P1.2 ;发射控制BUT BIT P3.3ORG 0000HSJMP STAORG 0003HLJMP INTX0ORG 000BHLJMP INTT0STA: CLR OUT MOV TMOD,#22H MOV TH1,#0F3H ;波特率2400 MOV TL1,#0F3H ANL PCON,#7FH MOV SCON,#50H MOV TH0,#197 ;定时58.8uS MOV TL0,#197 SETB EA SETB ET0 SETB IT0 SETB TR1ST0: BUT,ST0 MOV R0,#0 DJNZ R0,$

33、 BUT,$ST1:JNB BUT,$ CLR P1.4 CLR F0 CLR EX0 CLR TR0 MOV TL0,#197 MOV DPTR,#0 ;存放结果 SETB OUT ;发射8-10个周期40KHZ超声波 SETB TR0 LCALL DELY CLR OUT SETB EX0 JNB P1.4,$;显示程序,41h为最高位,43h为最低位DISPLAY:MOV R1,#41H MOV R5,#0FDH PLAY:MOV A,R5 MOV P0,#0FFH MOV P2,A MOV A,R1 MOV DPTR, #AAA MOVC A,A+DPTR MOV P0,A LCALL

34、 DL1MS MOV R1,#42H MOV A,#0FBH MOV P0,#0FFH MOV P2,A MOV A,R1 MOV DPTR, #TAB MOVC A,A+DPTR MOV P0,A LCALL DL1MS MOV R1,#43H MOV A,#0F7H MOV P0,#0FFH MOV P2,A MOV A,R1 MOV DPTR, #TAB MOVC A,A+DPTR MOV P0,A LCALL DL1MS JNB BUT,ST1 LJMP DISPLAY LJMP ST0AAA: DB 40H,79H,24H,30H,19H,12H,02H,78H,00H,10HTAB

35、: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HDL1MS:MOV R6,#14H DL1:MOV R7,#19HDJNZ R7,$ DJNZ R6,DL1RETINTX0: F0,INTX1 ;第一次中断为盲区中断,第2次为有效,关闭第3次。 CPL F0 LJMP INTX2INTX1:CLR TR0 MOV SBUF,DPH JNB TI,$ CLR TI MOV SBUF,DPL JNB TI,$ CLR TI CLR EX0 SETB P1.4 MOV A,DPL MOV B,#100 DIV AB MOV 41H,A MOV A,B

36、 MOV B,#10 DIV AB MOV 42H,A MOV 43H,BBBB:ANL DPH,#01H MOV A,DPH CJNE A,#01H,intx2 MOV A,43H ADD A,#06H DA A MOV 43H,A ANL 43H,#0FH SWAP A ANL A,#0FH MOV R3,A ;十位要加r3,再加5 MOV A,42H ADD A,R3 DA A MOV 42H,A ANL 42H,#0FH SWAP A ANL A,#0FH MOV R2,A ;百位要加r2再加2 MOV A,42H ADD A,#05H DA A MOV 42H,A ANL 42H,#0FH SWAP A ANL A,#0FH MOV R4,A ;百位要加r4,r2和2 MOV A,41H ADD A,#02H ADD A,R4 ADD A,R2 MOV 41H,A INTX2:RETIINTT0:INC DPTR RETIDELY:MOV R0,#100 DJNZ R0,$ RETEND

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号