基于单片机的超声波测距课程设计报告书_第1页
基于单片机的超声波测距课程设计报告书_第2页
基于单片机的超声波测距课程设计报告书_第3页
基于单片机的超声波测距课程设计报告书_第4页
基于单片机的超声波测距课程设计报告书_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 PAGE18 / NUMPAGES19单片机应用实习任务书学生系部专业班级指导教师职称是否外聘题目名称设计的容、意义与技术指标要求1、设计容与意义随着科学技术的快速发展,超声波将在测距仪中的应用越来越广。但就目前技术水平来说,人们可以具体利用的测距技术还十分有限,因此,这是一个正在蓬勃发展而又有无限前景的技术与产业领域。超声波测距就是利用其反射特性,超声波发生器不断地发射出40kHz超声波遇到障碍物后反射回反射波,超声波接收器接收到发射波信号,并将其转换为电信号。相比于其它定位技术超声波定位技术成本低,制作容易,非常适合于短距离测量定位。因此,设计好的超声波测距仪就显得非常重要了。这就是我设

2、计超声波测距仪的意义。2、技术指标要求以单片机发射40khz的方波与数码管显示距离以CX20106A接收信号摘 要本设计采用以STC89C52单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。整个电路由主程序、预置子程序、发射子程序、接收子程序、显示子程序等模块组成。各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。关键词:STC89C52; 超声波;测距第1章 总体设计方案1.1 总体设计方案 方案一基于单片机的超声波测距系统,是利用单片机编程产生频率为 40kHz 的方波 ,

3、经过发射驱动电路放大,使超声波传感器发射端震荡,发射超声波。超声波波经反射物反射回来后,由传感器接收端接收,再经接收电路放大、整形,控制单片机中断口。其系统框图如图 1.1 所示。超声波接收器放大电路锁相环电路温度传感器超声波发射器功率驱动电路显示电路单片机40kHz脉冲图1.1这种以单片机为核心的超声波测距系统通过单片机记录超声波发射的时间和收到反射波的时间 。 当收到超声波的反射波时 , 接收电路输出端产生一个负跳变 , 在单片机的外部中断源输入口产生一个中断请求信号 , 单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离,结果输出给 LED 显示 利用单片机准确计时 ,

4、 测距精度高 , 而且单片机控制方便 , 计算简单 。 许多超声波测距系统都采用这种设计方法。方案二基于 CPLD 的超声波测距系统,这种测距系统采用 CPLD(Complex Programmable Logic Device) 器件,运用 VHDL(Very High Speed Integrated Circuit Hardware DescriptionLanguage) 编写程序,使用 MAX+plusII 软件进行软硬件设计的仿真和调试,最终实现测距功能。CPLD 器件部的宏单元是其最基本的模块,能独立地编程为 D 触发器 、 T触发器、RS 触发器或 JK 触发器工作方式或组合逻

5、辑工作方式。它的这种特性非常适用于本系统,可将本系统所需要的分频功能、计数功能、振荡器、七段码显示全部由 MAX 来实现,而只需在外部配上适当的超声波传感器、接收和发送电路,即可组成一个测量精度高、性能稳定、响应速度快且具有显示功能的超声波测距仪。本系统利用 CPLD 器件控制超声波的发射,并对超声波发射至接收的往返时间进行计数,将计算结果在 LED 上显示出来。配合使用 MAX+plusII 开发软件,可集设计输入、设计处理、设计校验和器件编程于一体,集成度高,开发周期短 。其系统框图如下图 所示。晶振启动复位显示模块分频脉冲模块复位模块计数模块发射放大发射传感器整形接收放大接收传感器图1.

6、2通过以上我们知道,以单片机为核心的超声波测距系统设计简单、方便 ,而且测精度能达到工业要求。本设计测距系统就是用单片机控制的。通过超声波发射器向某一方向发射超声波,单片机在发射时刻同时开始计时,超声波在空气中传播, 途中碰到障碍物就立即反射回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为 v,根据计时器记录的时间 t,就可以计算出发射点距障碍物的距离。本系统利用单片机控制超声波的发射和对超声波自发射至接收往返时间的计时。接收电路的输出端接单片机的外部中断源输入口。系统定时发射超声波 ,在启动发射电路的同时启动单片机部的定时器,利用定时器的计数功能记录超声波发射的时间和收

7、到反射波的时间。当收到超声波的反射波时,接收电路输出端产生一个负跳变,在单片机的外部中断源输入口产生一个中断请求信号,单片机响应外部中断请求执行外部中断服务子程序,读取时间差,计算距离,结果输出给数码管显示。1.2 软硬件功能分析第2章 硬件电路设计2.1 单片机最小系统电路设计单片机最小系统是单片机能正常工作的最小外接电路单元,是设计电路的核心部分,也是整个作品最关键的最重要的部分。单片机最小系统包括:复位电路、晶振电路、P0口外接一个排阻,同时EA引脚必须接在外部电源的正极。2.2 数码管电路设计(小四号黑体)本设计是最终距离需要数码管显示。我使用的是四位功能共极数码管。用于显示距离。采用

8、动态显示方法显示数据,即所有段选接在一起接到P0口,把各位选分别接在P2。4-P2.7口上。同时所有位选必须接在NPN三极管的集电极,三极管的发射极分别接一个2K的电阻。2.3超声波接收电路设计集成电路CX20106A是一款红外线检波接收和超声波接收的专用芯片,常用于电视机红外遥控接收器,通过外接电阻可以调整检波频率,如图。实验证明,用CX20106A接收超声波具有很高的灵敏度和较强的抗干扰能力。R4决定检波频率,220k时为38kHz。适当的更改C4的大小,可以改变接收电路的灵敏度和抗干扰能力。使用CX20106A集成电路对接收探头收到的信号进行放大,滤波,其总放大增益80dB,CX2010

9、6A电路说明如下所示。引脚号说明1超声信号输入端,该脚的输入阻抗约为40k。2该脚与地之间连接RC串联网络,它们是负反馈串联网络的一个组成部分,改变它们的数值能改变前置放大器的增益和频率特性。增大电阻R1或减小C1,将使负反馈量增大,放大倍数下降,反之则放大倍数增大。但C1的改变会影响到频率特性,一般在实际使用中不必改动,推荐选用参数为R1=1K,C1=1F。3该脚与地之间连接检波电容,电容量大为平均值检波,瞬间相应灵敏度低;若容量小,则为峰值检波,瞬间相应灵敏度高,但检波输出的脉冲宽度变动大,易造成误动作,推荐参数为3.3f。4接地端5该脚与电源间接入一个电阻,用以设置带通滤波器的中心频率f

10、0,阻值越大,中心频率越低。例如,取R=200k时,f042kHz,若取R=220k,则中心频率f038kHz。6该脚与地之间接一个积分电容,标准值为330pF,如果该电容取得太大,会使探测距离变短。7遥控命令输出端,它是集电极开路输出方式,因此该引脚必须接上一个上拉电阻到电源端,推荐阻值为22k,没有接受信号是该端输出为高电平,有信号时则产生下降。8电源正极,4.55.5V。2.4超声波发射电路设计发射电路主要由反相器74HC04和超声波换能器构成,单片机P1.0端输出的40KHZ方波信号一路经一级反相器后送到超声波换能器的一个电极,另一路经两级反相器后超声波换能器的令一个电极,用这种推挽形

11、式将方波信号加到超声波换能器两端可以提高超声波的发射强度,输出端采用两个反相器的并联,以提高驱动能力。上拉电阻R2R3,一方面可以提高反相器74HC04输出高电平的能力,另一方面可以增加超声波换能器的阻尼效果,以缩短其自由振动的时间。2.人机接口电路设计2.5 系统供电电源电路设计(小四号黑体)本供电部分采用9v电池块加7805芯片转换成5V给整个单片机系统供电。三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。用7805三端稳压IC来组成稳压电源所需的外围元件极少,电路部还有过流、过热与调整管的保护电路,使用起来可靠、方便。第3章 系统软件设计3.1 软件总体

12、设计思路3.2 主程序流程设计本设计软件分为两部分,主程序和中断服务程序,如下图所示。主程序完成初始化工作、各路超声波发射和接收顺序的控制。定时中断服务子程序完成三方向超声波的轮流发射,外部中断服务子程序主要完成时间值的读取、距离计算、结果的输出等工作。开始单片机初始化定时中断程序有回波吗外部中断子程序外部中断服务子程序3.3 中断服务子程序设计定时中断入口定时器初始化发射超声波发射完否停止发射返回外部中断入口关外部中断读取时间值计算距离结果输出开外部中断返回外部中断服务子程序课程设计总结(包括:设计质量分析、待完善和改进之处和心得体会)在接收电路中对于所接收的方波进行滤波整形等步骤,但由于条

13、件和技术有限,其中存在的很多误差没有得 到有效的效正。 比如温度的误差等。实验过程中总是出现4个8 的状态, 或者就是4 个0 一直在闪烁,后来就对着电路原理图又核实了以一遍,最后发现是发射的74HC04没有接地,所以说最重要是认真。在设计中用到了很多以前学习到的知识,C语言,一些基本的操作。尽管我们了很多低级的错误,但错误也让我们获益匪浅,了解了超波原理,放大电路的设计也掌握了51的开发过程中所用的方法。动手能力与自学能力得到了提高,对待事物的态度也发生了变化,理论总是与实践结合的。本学期终于迎来了单片机课程设计,说这次实习,我认为最重要的是对于程序的调试,认真完成所给的题目,这其中有很多的

14、问题,1,由于对课本理论知识了解不够深入,导致焊错了很多线,以与一些虚焊的地方。2。其次就是在做设计的过程中能想 到以后作为一名搞技术设计的人员,首先要具备的能力就是严谨。 这其中最让人回味的就是团队的配合,在团队中,我们互帮互助,对整个课程设计来说,这是至关重要的,缺少每一个人都会对我们的设计产生影响。还有要感指导老师在我们遇到困难时,给予我们的建议与鼓励。参考文献(1)专著 序号主要作者.专著名称文献类型标志M.出版地:出版单位,出版年:参考页码围.例:(2)连续出版物中的析出文献,即期刊 序号 主要作者.析出文献题名文献类型标志J.连续出版物题名:其他题名信息,年,卷(期):页码引用日期

15、. 例: 附 录附录1 总原理图附录2 源程序#includereg52.h#define uchar unsigned char#define uint unsigned intsbit s40hHz=P10;uint s,t;uchar d4;uchar temperature;uchar ultrasonic_counter;uchar sign_failure;uchar sign_complete;void delay()uchar i; for(i=0;i0;t-) for(i = 0;i4;i+) P0 = BCD_7di; P2|=0 x10i; delay(); P2&=0

16、x0f; void measure()sign_failure = 0; sign_complete = 0; TH2 = 0 ;TL2 = 1; TH0 = (256-12); TL0 = (256-13); ultrasonic_counter = 0; TR0 = 1; TR2 = 1; while(ultrasonic_counter16); TR0 = 0; while(sign_complete = 0) if(sign_failure) TR2 = 0; return; TR2 = 0; s=t*0.157; main()uchar i; TMOD = 0 x02; T2CON

17、= 0 x09; EA = 1; ET0 = 1; ET2 = 1; s = 0; for (i=0;i4;i+)di = 0; while(1) measure(); display(120); void T0_ISR()interrupt 1 using 1if(TH0=(256-12)TH0=256-13;else TH0=256-12;s40hHz =! s40hHz;ultrasonic_counter+;void T2_ISR()interrupt 5 using 1if(TF2)TF2 = 0;sign_failure = 1; else EXF2 = 0; t = RCAP2H*256+RCAP2L; sign_complete = 1; 单片机应用指导教师

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论