5l系列 单片机 中典型芯片(AT89C51)采用40引脚双列直插封装(DIP)形式,内部由CPU,4kB的ROM,256 B的RAM,2个16b的定时/计数器TO和T1,4个8 b的工/O端I:IP0,P1,P2,P3,一个全双功串行通信口等组成。特别是该系列单片机片内的Flash可编程、可擦除只读存储器(E~PROM),使其在实际中有着十分广泛的用途,在便携式、省电及特殊信息保存的仪器和系统中更为有用。该系列单片机引脚与封装如图1所示。
5l系列 单片机 提供以下功能:4 kB存储器;256 BRAM;32条工/O线;2个16b定时/计数器;5个2级中断源;1个全双向的串行口以及时钟电路。
空闲方式:CPU停止工作,而让RAM、定时/计数器、串行口和中断系统继续工作。
掉电方式:保存RAM的内容,振荡器停振,禁止芯片所有的其他功能直到下一次硬件复位。
5l系列 单片机 为许多控制提供了高度灵活和低成本的解决办法。充分利用他的片内资源,即可在较少外围电路的情况下构成功能完善的超声波测距系统。
2 单片机 实现测距原理
单片机 发出超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差tr,然后求出距离S=Ct/2,式中的C为超声波波速。
限制该系统的最大可测距离存在4个因素:超声波的幅度、反射的质地、反射和入射声波之间的夹角以及接收换能器的灵敏度。接收换能器对声波脉冲的直接接收能力将决定最小的可测距离。为了增加所测量的覆盖范围、减小测量误差,可采用多个超声波换能器分别作为多路超声波发射/接收的设计方法。由于超声波属于声波范围,其波速C与温度有关,表1。列出了几种不同温度下的波速。
在测距时由于温度变化,可通过温度传感器自动探测环境温度、确定计算距离时的波速C,较精确地得出该环境下超声波经过的路程,提高了测量精确度。波速确定后,只要测得超声波往返的时间r,即可求得距离5。其系统原理框图如图2所示。
单片机 (AT89C51)发出短暂的40kHz信号,经放大后通过超声波换能器输出;反射后的超声波经超声波换能器作为系统的输入,锁相环对此信号锁定,产生锁定信号启动单片机中断程序,得出时间t,再由系统软件对其进行计算、判别后,相应的计算结果被送至LED显示电路进行显示,若测得的距离超出设定范围系统将提示声音报警电路报警。
AT89C51通过外部引脚P2.0输出脉冲宽度为25/us、载波为40kHz的超声波脉冲串,加到射随器的基级,经功率放大推动超声波发射器发射出去。超声波接收器将接收到的反射超声波送到放大器进行放大,然后用锁相环电路进行检波。经处理后输出低电平,送到AT89C51的引脚利用该原理设计的实例:汽车防撞雷达
3.1 系统硬件设计
汽车防撞雷达可以帮助驾驶员及时了解车周围阻碍情况,防止汽车在转弯、倒车等情况下撞伤、划伤。其接收部分硬件电路如图3所示,发射、预置\控制、显示部分硬件电路如图4所示。
sP3.2,提供给软件进行处理。经过AT89C51对接收到的信息进行处理后,被测的距离茬LED上显示,显示的数据由串口线RXD和TXD输出到74LSl64,转化为并行数据控制LED的显示,采用动态显示。两位LED可表示4.9~0.1 m的距离,满足显示精度;若该距离小于预置的汽车低速安全刹车范围(如:1 n)或0.5m),报警电路发出适当的警告提示音,由P2.1的输出控制报警电路的工作。
3.2 系统软件设计
汽车防撞雷达根据超声测距原理用AT89C51 单片机 开发设计。整个软件采用模块化设计,由主程序、预置子程序、发射子程序、接收子程序、显示子程序等模块组成。
软件设计的主要思路是将预置、发射、接收、显示、声音报警等功能编成独立的模块,在主程序中采用键控循环的方式,当按下控制键后,在一定周期内,依次执行各个模块,调用预置子程序、发射子程序、查询接收子程序、定时子程序,并把测量的结果进行分析处理,根据处理结果决定显示程序的内容以及是否调用声音报警程序。当测得距离小于预置距离时,声音报警程序被调用。图5所示为程序的流程图。
4 结 语
利用51系列 单片机 设计的测距仪便于操作、读数直观。经实际测试证明,该类测距仪工作稳定,能满足一般近距离测距的要求,且成本较低、有良好的性价比。由于该系统中锁相环锁定需要一定时间,测得的距离有误差,在汽车雷达应用中此误差为3C111可忽略不计;但在精度要求较高的工业领域如机器人自动测距等方面,此误差不能忽略,只有通过改变--些硬件的应用实现对超声波的快速锁定,使误差进一步减小到0.31llnl,可以满足更高要求。
关键字:51单片机 测距仪
引用地址:
51单片机设计测距仪原理及其应用
推荐阅读最新更新时间:2024-03-16 15:53
51单片机和FIFO的接口和操作
下面的程序中,单片机将FIFO中的数据读取出来后,从串口发送出去。 ;*********************************** ef bit p3.3 ;fifo empty flag rst bit p3.5 ;reset fifo read bit p3.7 ;read fifo org 0000h ljmp main org 0030h main: ;------ initial timer mov tmod,#00100001b ;timer0 mode 1 (16 bit) ;time
[单片机]
C51单片机模拟I2C总线驱动程序设计(2)
/************************************ I2C_RcvB ******************************** 函数名:uchar I2C_RcvB() 入口: 出口:uchar 型数据 功能描述: 接收从器件传来的数据,并判断总线错误(不发应答信号),收完后需要调用应答函数。 调用函数: 全局变量: ******************************************************************************* uchar I2C_RcvB() { uchar retc;
[单片机]
51单片机的特殊功能寄存器(SFR)
在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下: 符号 地址 功能介绍 B F0H B寄存器 ACC E0H 累加器 PSW D0H 程序状态字 IP B8H 中断优先级控制寄存器 P3 B
[单片机]
51单片机存储器介绍(3)
高128单元:(80H-FFH) 21个特殊功能寄存器不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作. 在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下:
[单片机]
最简单的51单片机红外遥控解码程序
用单片机进行红外遥控解码,对大多数初学者来说是很麻烦的一个问题。下面介绍本人自编的红外遥控解码的C51程序,自认为是可能是史上最简的。此程序是针对uPD6121系列的遥控器的取码程序,解码值在Im 中,当IrOK=1时解码有效。 /* 51单片机红外遥控解码程序 */ /* 适用uPD6121系列 */ #include #define DIGPORT P2 #define WORDPORT P0 unsigned char code LED_num ={0x3f,0x18,0x76,0x7c,0x59,0x6d,0x6f,0x38,0x7f,0x7d}; #define Imax
[单片机]
51单片机片内数据存储器分为哪几个性质和用途不同的区域?
8051内部128B的数据RAM区,包括有工作寄存器组区、可直接位寻址区和数据缓冲区。各区域的特性如下: (1)00H~1FH为工作寄存器组区,共分4组,每组占用8个RAM字节单元,每个单元作为一个工作寄存器,每组的8个单元分别定义为8个工作寄存器R0~R7。当前工作寄存器组的选择是由程序状态字PSW的RS1、RS0两位来确定。如果实际应用中并不需要使用工作寄存器或不需要使用4组工作寄存器,不使用的工作寄存器组的区域仍然可作为一般数据缓冲区使用,用直接寻址或用Ri的寄存器间接寻址来访问。 (2)20H~2FH为可位寻址区域,这16个字节的每一位都有一个地址,编址为00H~7FH。 当然,位寻址区也可以用作字节寻址的一般
[单片机]
基于51单片机8音键电子琴DIY制作
单片机源程序如下: /************************************************************** 程序名称:模拟电子琴 **************************************************************/ #include reg52.h //定义头文件 #define uchar unsigned char //宏定义 #define led P0 //定义LED等位P0口 #define sw_port P1
[单片机]
MCS-51单片机与无线调制器的综合应用
GPS是目前技术上最成熟且已实用的一种定位系统,但是在GPS定位系统中,由于其是一个单向导航系统,他是把星历数据等传给地面接收机,可在许多具体应用时,例如在车辆调度系统中,一般都需要把利用GPS测得的信息数据传到调度中心,由于其系统由一个基准站和多个用户台组成,基准站与用户台之间的联系,即由基准站计算出的各种校正值发送到用户台,上边这一切都需要用到数据链来完成数据的传输。其中,数据链由调制解调器和电台组成。在无线数据传输系统中,调制解调器足一个关键部分,调制解调器(Modem)是将数据进行编码和调制,然后输入到电台发射出去,用户台将其接收下来,并将数据解调后,送入GPS接收机进行改正。本文介绍了单片机控制Modem的原理和方法。
[单片机]