毕业设计超声波传感器及应用LCD液晶显示器配合美妙的音乐进行显示.docx
《毕业设计超声波传感器及应用LCD液晶显示器配合美妙的音乐进行显示.docx》由会员分享,可在线阅读,更多相关《毕业设计超声波传感器及应用LCD液晶显示器配合美妙的音乐进行显示.docx(21页珍藏版)》请在冰豆网上搜索。
![毕业设计超声波传感器及应用LCD液晶显示器配合美妙的音乐进行显示.docx](https://file1.bdocx.com/fileroot1/2023-1/26/2849193b-b2bd-4b7b-892d-153332c98298/2849193b-b2bd-4b7b-892d-153332c982981.gif)
毕业设计超声波传感器及应用LCD液晶显示器配合美妙的音乐进行显示
超声波传感器及应用
——超声波测距
摘要:
介绍了一种基于AT89C52单片机的超声波测距系统,由555和运放及比较器配合超声波传感器有效组成了超声波的发射电路和接收电路。
同时在数据处理,盲区消隐方面提出了有效解决方法!
从而提高了检测的精度及灵敏度,以及用LCD液晶显示器配合美妙的音乐进行显示。
本文主要阐述了超声测距系统的硬件电路构成、工作原理及软件设计方法。
该系统硬件结构简单、工作可靠,有良好的测量精度和灵敏度。
[关键字]超声波测距LCD液晶
前言
随着科技的迅猛发展越来越多科技成果被广泛的运用到人们的日常生活当中,给我们的生活带来了诸多方便。
这一设计就是本着这个宗旨出发,利用超声波的特性来为我们服务。
人们能听到声音是由于物体振动产生的,它的频率在20HZ-20KHZ范围内,超过20KHZ称为超声波,低于20HZ的称为次声波。
常用的超声波频率为几十KHZ-几十MHZ。
由于超声波指向性强,因而常于距离的测量。
利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在移动机器人,汽车安全,海洋测量等上得到了广泛的应用。
本设计提供一种液晶显示测距装置,该装置利用了发射接收一体化的超声波传感器和微处理器。
采用超声波传感器分时工作于发射和接收,利用声波在空气中的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物到超声波测距器之间的距离。
距离是在不同的场合和控制中需要检测的一个参数,所以,测距就成为数据采集中要解决的一个问题。
尽管测距有多种方式,比如,激光测距,微波测距,红外线测距和超声波测距等。
但是,超声波测距不失为一种简单可行的方法。
虽然超声波测距电路多种多样,甚至已有专用超声波测距集成电路。
但是,有的电路复杂,技术难度大,有的调试困难,有的元件不易购买。
本文介绍的电路,成本低廉,性能可靠,所用元件易购,并且利用测距原理,结合单片机的数据处理,使测量精度提高,电路实现容易,无须调试,工作稳定可靠。
目录
前言I
第一章绪论1
1.1选题背景及研究意义1
第二章方案论证2
2.1超声波测距原理2
2.2系统的工作原理2
第三章系统硬件电路的设计4
3.1AT89C52单片机4
3.2超声波发射电路5
3.3超声波接收电路8
3.4LCD液晶显示部分结构10
3.5音乐播放模块15
第四章系统软件设计16
4.1超声波接收发射软件设计16
4.2音频脉冲的产生19
4.3LCD液晶显示部分软件设计19
结论22
参考文献23
致谢24
附录25
第一章绪论
1.1选题背景及研究意义
1.1.1选题背景
在日常生活中,有各种各样的测距仪。
与激光测距、红外线测距相比,超声波对外界光线、色彩和电磁场不敏感,更适于黑暗、电磁干扰强、有毒、灰尘或烟雾的恶劣环境,在识别透明及漫反射性差的物体上也更有优势。
而且超声波还有其指向性强、能量消耗缓慢、传播距离较远等优点。
超声波测距是一种非接触式测量,广泛应用于倒车防撞雷达、机器人接近觉、海洋测量、物体识别等领域。
距离是在不同的场合和控制中需要检测的一个参数,所以,测距就成为数据采集中要解决的一个问题。
1.1.2研究意义
本设计是超声波测距仪装置,该装置利用了发射接收一体化的超声波传感器和微处理器。
采用超声波传感器分时工作于发射和接收,利用声波在空气中的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物到超声波测距器之间的距离。
因此经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。
在日常生活中起了广泛的作用。
第二章方案论证
2.1超声波测距原理
为了研究和利用超声波,人们已经设计和制成了许多超声波发生器。
总体上讲,超声波发生器可以分为两大类:
一类是用电气方式产生超声波,一类是用机械方式产生超声波。
电气方式包括压电型、磁致伸缩型和电动型等;机械方式有加尔统笛、液哨和气流旋笛等。
它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也各不相同。
目前较为常用的是压电式超声波发生器
超声波测距通常采用度越时间法,即利用s=vt/2计算被测物体的距离。
式中s为收发头与被测物体之间的距离,v为超声波在介质中的传播速度(v=331.41+T/273m/s),t为超声波的往返时间间隔。
工作原理为:
发射头发出的超声波以速度v在空气中传播,在到达被测物体时被其表面反射返回,由接收头接收,其往返时间为t,由s算出被测物体的距离。
T为环境温度,在量精度要求高的场合必须考虑此影响,但在一般情况下,可舍去此法,由软件进行调整补偿。
由于超声波也是一种声波,其声速c与温度有关,附表1列出了几种不同温度下的声速。
在使用时,如果温度变化不大,则可认为声速是基本不变的。
如果测距精度要求很高,则应通过温度补偿的方法加以校正。
声速确定后,只要测得超声波往返的时间,就可以求出距离。
这就是超声波测距原理。
表1温度与声速的关系
温度(℃)
-30
-20
-10
0
10
20
30
100
声速(m/s)
313
319
325
333
338
344
349
386
2.2系统的工作原理
系统的工作是由软件和硬件的配合过程。
先由微机使555使能端置1,继而555送出40kHz频率的方波信号经过压电换能器(超声波发射头)将信号发射出去及发射超声波,同时该时刻启动定时器开时计时。
该信号遇到障碍物反射回来在此称为回波。
同时,压电换能器(超声波接收头)将接收的回波及接收超声波,通过信号处理的检波放大,及通过三级放大后再送到比较器进行比较输出比较电压,输出电压经过三极管以后,使之电压与AT89C52的I/O口相匹配最后送至微机处理。
最后进行LCD液晶显示同时配上美妙的音乐。
超声波测距系统设计框图如图2.1所示。
±5V电源
图2.1超声波测距系统组成框图
第三章系统硬件电路的设计
硬件电路主要分为单片机系统及显示电路、超声波发射电路、超声波接收电路和电路音乐回放电路等部分组成。
3.1AT89C52单片机
AT89C52是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,片内含8KB的可反复檫写的程序存储器和12B的随机存取数据存储器(RAM),器件采用Atmel公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内配置通用8位中央处理器(CPU)和Flash存储单元,功能强大的AT89C52单片机可灵活应用于各种控制领域。
单片机正常工作时,都需要有一个时钟电路,和一个复位电路。
本设计中选择了内部时钟方式和按键电平复位电路,来构成单片机的最小电路。
如图3.1所示。
Vcc
XTAL1
RST
XTLL2
Vss
图3.1单片机的最小电路
3.1.1时钟电路
计算机工作时,是在统一的时钟脉冲控制下一拍一拍的进行的,这个脉冲
是由单片机控制器中的时序电路发出的。
单片机的时序就是CPU在执行指令时所需控制信号的时间顺序。
为了保证各部件间的同步工作。
单片机内部电路就在惟一的时钟信号控制下严格的按时序进行工作。
要给单片机提供时序要有相
关的硬件电路,即振荡器和时钟电路。
因此选择了内部时钟方式。
利用蕊片内部的振荡器,然后在引脚XTAL1和XTAL两端跨接晶体或陶瓷谐振器,就构成了稳定的自激振荡器,其发出的脉冲直接送入内部时钟电路如图1所示,外接晶振时,C1和C2值通常选择为30PF左右。
C1,C2对频率有微调作用。
晶体的频率范围可在1.2~12MHZ之间选择。
在实际连接中,为了减少寄生电容,更好地保证振荡器稳定。
可靠地工作,振荡器和电容应尽可能安装得与单片机蕊片靠近。
3.1.2复位电路
有图可以看出,是按键电平复位电路,相当于按复位键后复位端通过电阻与Vcc电源接通。
复位是单片机的初始化操作。
单片机在启动运行时,都需要先复位,其作用是使CPU和系统中其他部件都处于一个确定的初始状态,并从这个状态开始工作。
因而,复位是一个很重要的操作方式。
但单片机本身是不能自动进行复位的,必须配合相应的外部电路来实现。
3.2超声波发射电路
发射电路由555构成的多谐振荡器和超声波发射头组成。
3.2.1多谐振荡器
采用555构成多谐振荡器可以实现宽范围占空比的调节!
并且电路设计简单!
占用面积小。
如图3.2所示,由单片机AT89C52的P2.3口发出同步脉冲信号!
该同步脉冲启动多谐振荡器!
使其输出40KHZ的高频电压信号!
经过整形直接加至超声波换能器探头!
根据逆压电效应!
产生振动频率为40KHZ的超声波。
图3.2超声波发射电路
接通电源后,电容C被充电,VC上升,当VC上升到2/3VCC时,触发器被复位,同时放电BJTT导通,此时Vo为低电平,电容C通过R2和T放电,使VC下降。
当VC下降到1/3VCC时,触发器又被置位,Vo翻转为高电平。
电容器C放电所需的时间为
当C放电结束时,T截止,VCC将能过R1,R2向电容器充电,VC由1/3VCC上升到2/3VCC所需的时间为
当VC上升到2/3VCC时,触发器又发生翻转,如此周而复始,在输出端就得到一个周期性的方波,其频率为
由于555内部的比较器的灵敏度较高,而且采用差分电路形式,它的振荡频率受电源电压的温度变化的影响很小。
┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
图3.3555的工作波形图
从555的工作波形图,可看出占空比是固定不变的。
为了调解的方便,我把R1和R2都换成了电位器,就形成了占空比可调的电位器。
使的超声波的发射电路更加具有高效性。
也能满足波尽可能的减小失真。
从面达到测距更长的效果。
3.2.2超声波传感器
从图3.2超声波的发射电路上看还有一个超声波传感器。
它具有把电信号转化为机械信号,同时又能把机械信号转化为电信号的功能。
在设计中选择了压电式超声波发声器。
压电式超声波发生器实际上是利用压电晶体的谐振来工作的。
超声波发生器内部结构如图3.4所示,它有两个压电晶片和一个共振板。
压电晶体组成的超声波传感器是一种可逆传感器,它可以将电能转变成机械振荡而产生超声波,同时它接收到超声波时,也能转变成电能,所以它可以分成发送器或接收器。
当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。
反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。
本文所采用的超声波传感器是T/R-40-16(其中T表示发送,R表示接收,40表示频率为40KHZ,16表示其外径尺寸,以毫米计)
共振板
图3.4超声波传感器结构
3.3超声波接收电路
超声波接收电路包括由MC3403构成的三级回波放大电路以及LM358电压比较整形电路两部分,与超声波接收传感器T-40-16配合使用,实现超声波的接收功能。
图3.5超声波接收电路
3.3.1放大电路及其参数的设计
当测量距离较大时,超声波的回波较弱,这时候就需要将信号放大,否则其转换成电信号的幅值也会比较小。
如图3.5所示,设计中,采用三级放大电路,将信号最大能放大50万倍。
其中运算放大器IC3A、IC3B放大倍数为100倍,IC3C放大倍数为可调的。
根据公式Au=R6/R4(以第一级放大电路为例),可以求得各放大电路的参数。
计算后,取值如下,R3=10K,R4=10K,R6=1M,R7=1M。
第三给放大是可调的Au=Rx/R2.其中R2=10K。
Rx为500K可调的滑动变阻器。
所以放大倍数是在(0~50)之间。
从图3.5中,可以看到各个运放的基准电压都是可调的。
这样更有利于达到自己想要的理想结果。
超声波接收头接收到的40kHz反射波交流信号。
电容C5、C9、C12的作用为滤掉直流信号,对电容的大小无特别要求,所以一律选为1000PF。
其中的放大电路是由MC3403构成的。
MC3403是四低功耗运算放大器。
它的引脚结构如图3.6所示。
图3.6MC3403的引脚结构
3.3.2电压比较电路及其参数的设计
电压比较器的功能是比较两个电压值的大小,例如,将一个信号电压U1和另一个参考电压UR进行比较,在U1>UR和U1比较器的输出通常只有高电平和低电平两个稳定状态,因此它相当于一个受输入信号控制的开关,当输入电压经过阈值时开关动作,使输出从一个电平跳转到另一个电平。
系统中,比较器的作用是将信号电压与设定的基准电压相比较,当信号电压大于基准电压时,比较器输出正脉冲,Q1导通,P2.5接收负脉冲信号,单片机CPU发出中断,记录发射信号与接受信号之间的时间,并计算距离。
在比较器的设计中要考虑两点因素:
第一,要使Q1导通;第二,要使经过三极管以后的电压与AT89C52的P2.5口相匹配。
为了
在实际应用时能得到合适的参数,将R10设计为最大阻值为5.1kΩ的电阻,这样,R10的阻值便可得到满足上述条件的电压信号。
用做电压比较器的的LM358,从图3.5可以看出比较器的的基准电压是可调的,因为从超声波接收的信号,要求有很高的灵敏度和精度,从放大电路出来的电压变化是非常微妙的,必须配和可调的基准电压采能满足进行比较达到达到设计中的需要。
LM358内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,适合于电源电压范围很宽的单电源使用,也适用于双电源工作模式,在推荐的工作条件下,电源电流与电源电压无关。
它的使用范围包括传感放大器、直流增益模块和其他所有可用单电源供电的使用运算放大器的场合。
图3.7为LM358的引脚结构图。
图3.7LM358的引脚结
3.4LCD液晶显示部分结构
在显示模块中,选择了JM12864J型图形点阵液晶显示模块进行显示。
通过硬件电路和软件结合使得在液晶中显示如图3.8所示。
JM12864J一共有有20个引脚,包括数据引脚,控制引脚和电源引脚,硬件电路非常简单。
强大的功能主要是通过软件实现。
超声波测距仪
-黄益展
距离:
00.0000米
当前温度:
00℃
图3.8LCD显示屏
3.4.1LCD的参数和性能及引脚介绍
JM12864J是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成.可完成图形显示,也可以显示8×4个(16×16点阵)汉字.LCD显示器是把LCD显示屏和控制模块结合在一起组成一个的整体。
主要技术参数和性能:
Ø电源:
VDD:
+5V;LCD外接驱动电压为-3.0∽-8.0V
Ø显示内容:
128(列)×64(行)点
Ø全屏幕点阵
Ø七种指令
Ø与CPU接口采用8位数据总线并行输入输出和8条控制线.
Ø占空比1/64
Ø工作温度:
-10℃∽+60℃,存储温度:
-20℃∽+70℃
显示器模块的外部接口是通过它的外接引脚,由外部对其进行读写操作共同形成的。
外部引脚提供了接口的通道,而外部单片机对模块的读写操作则执行了单片机的模块之间的信息交流,也就是显示内容的交流.JM12864J一共有20个引脚,外部引脚编号为1~20。
外接引脚编号、符号及其含义如表2所示。
表2外部引脚及含义
管脚号
管脚名称
电平
管脚功能描述
1
VSS
0V
电源地
2
VDD
5.0V
电源电压
3
V0
-
液晶显示器驱动电压:
0~-5V
4
RS
H/L
RS=“H”,表示DB7~DB0为显示数据
RS=“L”,表示DB7~DB0为显示指令数据
5
R/W
H/L
R/W=“H”,E=“H”,数据被读到DB7~DB0
R/W=“L”,E=“H→L”,DB7~DB0的数据被写到IR或DR
6
E
H/L
使能信号:
R/W=“L”,E信号下降沿锁存DB7~DB0
R/W=“H”,E=“H”DDRAM数据读到DB7~DB0
7~14
DB0~DB7
H/L
数据总线
15
CS1
H/L
H:
选择芯片(右半屏)信号
16
CS2
H/L
H:
选择芯片(左半屏)信号
17
RESET
H/L
复位信号,低电平复位
18
VOUT
-10V
LCD驱动负电压
19
LED+
DC+5V
LED背光板电源
20
LED-
DC0V
LED背光板电源
3.4.2AT89C52和LCD显示器模块的接口
AT89C52和LCD显示器模块的接口包括硬件接口和软件接口两个部分。
硬件接口是指AT89C52和LCD显示器模块的信息逻辑接线方法。
软件接口是指AT89C52对LCD显示器模块的显示控制方法及程序。
下面分别介绍这两种接口
方法。
3.4.2.1AT89C52和LCD显示器模块的硬件接口
AT89C52和JM12864J的硬件接口连线如图3.9所示。
在图中看出,LCD显示器模块的能动信号E是由AT89C52的P3.2控制。
当P3.2电平由高到低产生一个下降沿脉冲,就产生能动信号E。
AT89C52的P3端口的P3.0~P3.5用于产生控制信号,用于控制LCD显示模块的工作。
其中P3.0用于产生数据指令标志信号RS;P3.1用于产生读写信号R/W;P3.3、P3.4用于产生选择信号CS1、CS2;P3.5用于产生复位信号RST。
AT89C52的P1端口用于传送数据或指令,故P1.0~P1.7和LCD显示器模块的DB0~DB7相连。
为使显示屏能具有满意的亮度,在+5V和-5V之间接一个电位器,用于调节VEE的电压。
VEE的电压一般取0~-5V。
图3.9AT89C52和LCD显示器模块接口
3.4.2.2AT89C52和LCD显示器模块的软件接口
在JM12864J型LCD显示器模块就用中,有7种指令格式。
这些指令用于
对模块执行专门的控制功能,为些指令及其功能分别说明如下。
1)显示开关控制(DISPLAYON/OFF)
代码
R/W
RS
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
形式
0
0
0
0
1
1
1
1
1
D
D=1:
开显示(DISPLAYON)意即显示器可以进行各种显示操作
D=0:
关显示(DISPLAYOFF)意即不能对显示器进行各种显示操作
2)设置显示起始行(DISPLAYSTARTLINE)
代码
R/W
RS
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
形式
0
0
1
1
A5
A4
A3
A2
A1
A0
Z地址计数器是一个6位计数器。
此计数器具备循环计数功能,是用于显示行扫描同步的。
当一行扫描完成,此地址计数器自动加1,指向下一行扫描。
RST复位后Z地址计数器为0。
显示起始行是由Z地址计数器控制的。
A5~A06位地址自动送入Z地址计数器,起始行的地址可以是0~63的任意一行。
例如:
选择A5~A0是62,则起始行与DDRAM行的对应关系如下:
DDRAM行:
62630123·················2829
屏幕显示行:
123456·················3132
3)设置页地址(SETPAGE“XADDRESS”)
代码
R/W
RS
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
形式
0
0
1
0
1
1
1
A2
A1
A0
所谓页地址就是DDRAM的行地址,8行为一页,模块共64行即8页,A2~A0表示0~7页。
读写数据对地址没有影响,页地址由本指令或RST信号改变复位后页地址为0。
页地址与DDRAM的对应关系见DDRAM地址表。
4)设置Y地址(SETYADDRESS)
代码
R/W
RS
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
形式
0
0
0
1
A5
A4
A3
A2
A1
A0
此指令的作用是将A5~A0送入Y地址计数器,作为DDRAM的Y地址指针。
在对DDRAM进行读写操作后,Y地址指针自动加1,指向下一个DDRAM单元。
DDRAM地址表如表3所示。
表3DDRAM地址表
CS1=1
CS2=1
Y=
0
1
……
62
63
0
1
……
62
63
行号
X=
0
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
0
↓
7
↓
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
8
↓
55
X=7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
DB0
↓
DB7
56
↓
63
5)读状态(STATUSREAD)
代码
R/W
RS
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
形式
0
1
BUSY
0
ON/OFF
RET
0
0
0
0
当R/W=1RS=0时,在E信号为“H”的作用下,状态分别输出到数据总线(DB7~DB0)的相应位。
BF:
BF标志组件内部的工作情况。
BF=1表示组件在进行内部操作,此时组件不接受外总指令和数据;BF=0时,组件为准备状态,随时可接受外总指令和数据。
ON/OFF:
表示DFF触发器的状态,用于控制屏幕显示的开和关。
RST:
RST=1表示内部正在初始化,此时组件不接受任何指令和数据
6)写显示数据(WRITEDISPLAYDATE)
代码
R/W
RS
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
形式
0
1
D7
D6
D5
D4
D3
D2
D1
D0
D7~D0为显示数据,此指令把D7~D0写入相应的DDRAM单元,Y地址指针自动加1。
7)读显示数据(READDISPLAYDATE)
代码
R/W
RS
DB7
DB6
DB5
DB4