收藏 分销(赏)

基于STC89C52单片机设计超声波测距.docx

上传人:快乐****生活 文档编号:4666043 上传时间:2024-10-08 格式:DOCX 页数:68 大小:4.41MB
下载 相关 举报
基于STC89C52单片机设计超声波测距.docx_第1页
第1页 / 共68页
基于STC89C52单片机设计超声波测距.docx_第2页
第2页 / 共68页
点击查看更多>>
资源描述
西安工程大学本科毕业设计(论文) 摘 要 随着社会的快速发展,电脑已经在我们生活和学习中得到普及。但是在享受信息化带来的方便和乐趣的同时,我们不能忽视与之带来的问题,比如长期使用电脑造成颈椎病、近视眼等一系列疾病。为此,本文提出要开发电脑近距报警器来改善这种状况。 本设计以STC89C52单片机为核心,通过安装在电脑显示器上、中、下三个HC-SR04超声波模块测量人的距离,从而得知人的位置,判断人是否离电脑距离过近,姿势是否正确,通过报警提示用户矫正姿势;通过DS18B20温度传感器采集实时温度,判断环境温度是否正常,为用户提供环境温度参考;对电脑的使用时间进行记录,以便提醒用户休息;由独立键盘和LCD1602组成友好的人机交互界面,便于用户操作。经过调试,最后验证本设计实现了以上所提到的功能,具有创新性和使用价值。 经过对设计的功能进行分析,在论文开始得出了该系统的设计方案,接着从硬件、软件两部分对整个系统的设计方案进行了详细描述,最后通过系统的调试与分析验证了系统功能。 关键字:单片机,超声波,测距,矫正姿势 ABSTRACT With the fast development of society, computers have been widely used in our normal life and study. While we enjoy the convenience in information and fun, we can't ignore the problems, such as the cervical vertebra disease, myopia, a series of disease for the long time use of computers. Thus, the alarm for the near distance between computer and user, which is used to improve this situation is proposed in this context. The design is in the core of STC89C52 Single chip microcomputer, measures people’s distance through the up, middle, down three HC-SR04 ultrasonic wave parts which are installed on the computer display, according to the records, it'll know the people's position, judge whether the distance that's between user and computer is too close, the gesture is right or not, then prompt user to correct gesture through alarm, it'll judge whether the environmental temperature is normal, in order to apply user the reference temperature through the DS18B20 temperature sensor to get the actual ones, the computer’s use time will be recorded to suggest users to get relaxed, the friendly human computer interaction interface which consist of independence keyboard and the LCD1602 can be easily used, too. After debugging, it was tested that the design has accomplished the whole functions, and it's innovative and valuable. According to the analyze of the application, it comes into being the design scheme of the system in the beginning, then gives the detail description from hardware and software both sides, finally gets the verification of the system function through the system debugging and analyze. KEY WORDS: microcontroller, ultrasonic, ranging, correct posture 目 录 前 言 1 第1章 绪 论 2 1.1基本原理 2 1.1.1测距的基本原理 2 1.1.2人体工程学和舒适度原理 3 1.2 系统方案 3 1.2.1系统功能 4 1.2.2系统方案 4 1.2.2.1系统构架 4 1.2.2.2器件的选择 5 1.2.2.3相关软件工具 13 1.4调试方案 14 1.3 论文章节安排 14 第2章 硬件的设计 15 2.1系统硬件的功能 15 2.2 硬件总体设计 16 2.3硬件详细设计 17 2.3.1 单片机最小系统设计 17 2.3.1.2时钟电路 17 2.3.1.3复位电路 17 2.3.1.4电源电路 18 2.3.2超声波模块电路 19 2.3.3温度采集电路 19 2.3.4按键电路 20 2.3.5报警电路 20 2.3.6 LCD1602与单片机接口电路 21 2.4 系统整体原理图设计 22 2.5 系统整体PCB图设计 22 第3章 软件设计 23 3.1 软件的功能 23 3.2 软件总体设计 24 3.3软件详细设计 25 3.3.1主程序设计 25 3.3.2超声波测距子程序设计 26 3.3.3温度采集子程序设计 26 3.3.4设置子程序设计 30 3.3.4.1报警距离设置 30 3.3.4.2报警温度设置 30 3.3.5报警子程序设计 31 3.3.6显示子程序设计 32 3.3.6.1显示测量距离 34 3.3.6.2显示实时温度 34 3.3.6.3显示使用时间 34 3.4 程序代码 35 第4章 调 试 36 4.1调试目的 36 4.1.1验证超声波测距功能 36 4.1.2验证温度采集功能 36 4.1.3验证显示功能 36 4.1.4整体调试 37 4.2调试方案 37 4.2.1验证单个超声波测距模块的工作状态 37 4.2.2单独验证温度采集的数据 37 4.2.3通过测距和温度采集验证显示功能 37 4.2.4整体调试 37 4.3调试过程与结果 38 4.3.1超声波测距调试 38 4.3.2温度采集的调试 39 4.3.3显示的调试 39 4.3.4整个系统的调试 40 4.4 结果与分析 41 第5章 结论与展望 43 5.1结论 43 5.2展望 43 参考文献 45 致 谢 47 附录 48 附录Ⅰ最小系统电路图 49 附录Ⅱ最小系统PCB图 50 附录Ⅲ超声波测距原理图 51 附录Ⅳ主程序 52 附录Ⅴ温度采集子程序 59 附录ⅥLCD显示子程序 61 附录Ⅶ实物图 63 前 言 随着社会的快速发展,电脑已经在大家的生活中得到普及,但是人们在享受它带来的方便和乐趣的同时也不能忽视它给人们带来的问题,例如由于长时间使用电脑造成的近视;由于使用电脑姿势不正确带来的颈椎病,甚至造成脊柱弯曲;由于长时间坐在电脑跟前不作休息,对腰部造成伤害,例如很多长期使用电脑的人患有腰椎间盘突出;还有人脸与电脑距离过近,电脑显示器对脸部皮肤的辐射伤害等。 但是,目前我们所看到的都是治疗和预防以上所提到的症状的方法和仪器,比如治疗和预防近视眼的近视治疗仪,利用按摩穴位来改善眼部血液循环,进而达到预防和治疗近视的功效[1];颈椎治疗仪是一种治疗和预防颈椎病的仪器,它集颈椎牵引,颈椎按摩、热疗、针灸、磁疗、电疗等功能为一体的颈椎治疗仪器[2];还有腰椎间盘突出治疗仪,通过红外脉冲作用病灶部位,达到治疗效果[3]。以上这些只是治疗和预防这些病,没有从根本解决这些病的发生,我们还是不能避免电脑给人的伤害。 当今,人们对生活品质的要求越来越高,也对自我身心健康状况日益重视,希望既能够长时间使用电脑而且不能损害自己的身体健康,但是到目前为止没有一个有效的办法来解决此类问题,人们希望得到一款产品来彻底改变这种状况,免遭电脑的伤害。 鉴于此,我们便设想开发一个电脑近距离实用报警器,本设计要以保护人的健康为初衷,采用简单的设计,通过测距的方法来确定人的位置,从而判断人是否和电脑显示器距离过近,姿势是否正确;然后通过报警功能,提醒用户保持人与电脑的距离、姿势等;还有一个计时功能,记录用户使用电脑的时间,给用户一个时间参考,提醒用户注意休息;还有一个温度采集、显示、报警功能,保证人们使用电脑的环境温度要适合人的工作和学习。人性化的设置功能和显示界面,为用户的操作和使用带来了方便。经过试验,电脑近距离实用报警器人性化的设计可以有效的改变用户使用电脑的一些习惯,为用户提供提醒功能。从而解决了上面所提到的问题。 第1章 绪 论 本章主要介绍了该设计基本原理,整体方案的设计,然后细化到每个模块的方案选择,最后根据设计方案进行了整个论文的章节安排。 1.1基本原理 本设计主要从电脑显示器到用户脸部这一段空间着手构思,通过安装在电脑显示器正上方、左边、右边三个传感器分别测量电脑使用者上半身和电脑显示器之间的距离(如图1-1)。然后通过单片机计算三个传感器得到的数据,从而得到人与电脑的位置关系,再根据设置的距离判断用户使用电脑时和显示器之间的距离与使用姿势是否正确,如果不正确则通过报警装置提醒使用者注意使用电脑的距离和姿势。然后通过温度采集传感器得到实时温度,然后在单片机里将采集的温度和设置值对比,如果不符则报警提示,提醒用户改变环境温度。还有采用计时方式记录用户使用电脑的时间,给用户一个参考,提醒用户适当的休息。 图1-1电脑近距离报警器测距模拟图 1.1.1测距的基本原理 目前测距的方式大致分为激光测距、红外测距和超声波测距三大类,不管是哪种测试方式和测试仪器,其基本原理都是通过控制传感器发射端发射信号,然后信号通过被测物体反射,接收端接收反射回来的信号(如图1-2)。然后计算出从发射到接收所用时间,再根据该信号的传播速度就可以计算出物体和到发射接收端之间的距离。 发 收 被 测 物体 图1-2 测距原理图 1.1.2人体工程学和舒适度原理 电脑现在已经成为现在人们办公、学习、娱乐的必备的设配,但是我们不能忽视在使用电脑时给我们带来的伤害,而且我们要在此基础上,提高我们使用电脑时的舒适度。 根据人体工程学原理的基本知识,人的理想坐姿是身体与水平面成90°,这种姿势可以使肌肉消耗的力最少,而正是肌肉使人体保持了直坐的状态。但是要使人保持这种直坐的姿势除了需要一个对腰部有支撑的座椅外更需要我们自己调整姿势,并且人在这种90°的坐姿下眼睛可以直视电脑显示器,根据人体舒适度相关知识,人眼和电脑显示器在一个水平线并且保持一定的距离时,电脑对人眼伤害最小,保持一定距离辐射也会相对减少,而且减少颈椎病、肩周炎等疾病的发生概率[4]。 伴随着社会的飞速发展,生活节奏的加快,人们对工作环境舒适度的要求越来越高,从气象学方面了解到,影响人体的舒适度主要因素为:气温、湿度、风和气压。其中气温对人体的影响最大,它直接影响着人体许多生理机能。影响人的热平衡、关节功能、消化器官。所以我们应该重视我们所生活、工作和学习的环境温度,保持一个合适的温度,既有利于健康也有助于提高生活质量和工作学习效率。 1.2 系统方案 1.2.1系统功能 电脑近距离实用报警器的设计主要是为了改变现在人们使用电脑的坏习惯,然后通过辅助功能可以提示人们工作的时间和工作环境的温度。 1、实现测量人与电脑之间的距离并且报警 本系统通过安装在电脑显示器上的上、中、下三个测距传感器分别测得电脑与人之间直线距离S,人与左边传感器的距离S1,人与右边传感器的距离S2。通过S可以得知用户和显示器的直线距离,对比S和设置的距离值就可以判断人使用电脑时的距离是否合适;通过计算S1和S2的差值可以得知人在电脑显示器正中间还是偏左偏右,可以判断人使用电脑时的姿势是否合适。此测距精度可以达到1cm,足以判断人的准确位置。 2、实现温度的采集显示与报警 通过温度采集传感器采集实时温度,温度采集误差±0.5℃,并且要显示出来,如果温度大于或者小于设置的报警温度,提醒用户。 3、实现计时功能 然后通过软件编写计时功能,系统计时可以提供给用户使用电脑时间长短的信息,提醒用户要注意休息。 1.2.2系统方案 1.2.2.1系统构架 本设计由测距部分、处理部分、显示部分、设置部分、温度采集部分和报警部分组成(如图1-3),处理部分是整个系统设计方案的关键之一,其它部分要以它为核心进行相应的动作;测距部分则是主控部分最重要的外设,通过测距可以得到精确的距离数据,为后面的处理提供了精确的数据参考;设置部分是用户操作系统的唯一方式,通过设置功能可以设置报警距离和报警温度;显示部分是唯一的输出部分,通过它可以将测量的距离和温度实时呈现出来,通过设置和显示功能可以给用户提供一个友好的人机互动界面;报警部分是一个最简单的部分,它的主要功能是提醒用户。将以上的各个部分仔细整合在一起就可以将一个电脑近距实用报警器呈现给人们。 显示输出 处理器 距离测量 报警提示 温度采集 按键输入 图1-3 系统框图 1.2.2.2器件的选择 1、处理器的选择 STC89C52单片机是宏晶科技推出的新一代高速/低功耗/超强干扰的高性能CMOS8位微控制器,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 它具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口。另外 STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。而且STC89C52价格低廉,适合我们设计的初衷,最为关键的一点,STC89C52单片机的程序下载器便宜实惠,而且网上关于STC89C52的教程也很多,对于我们初学者而言很容易上手,鉴于STC89C52以上的特点,我们的控制器件最终选择STC89C52. (a)STC89C52RC实物图 (b)STC89C52RC引脚图 图1-4 STC89C52RC单片机 2、测距方案的选择 目前测距的方式有激光测距、红外线测距、超声波测距三大类,但是各有特点,我们要根据我们设计的需要来权衡这三类测距方式的利与弊,最终选择一个合适、有效的测距方式。 方案一:激光测距 由于激光在亮度、方向性、单色性和相干性等方面有独特之处,它就被广泛应用在工业生产、国防军事、科研机构、防盗安全等各个行业各个领域。 在测距领域,激光的作用更是不容忽视的,甚至可以说,激光测距是激光应用最早的领域,例如:世界上第一台激光器,是由美国休斯飞机公司的科学家梅曼于1960年,首先研制成功的,而在1962年就被应用于地球与月球之间距离的测量。测量精度高、分辨率高、抗干扰能力强、体积小同时重量轻的激光测距仪受到了大多数具有测距需求的企业、机构和个人的青睐,其市场需求空间大,应用领域广阔,并且起着日益重要的作用[5]。 激光测距仪一般采用两种方式来测量距离:脉冲法和相位法。脉冲法测距的过程是测距仪发射出的激光经被测量物体的反射后又被测距仪接收,测距仪同时记录激光往返的时间。光速和往返时间的乘积的一半,就是测距仪和被测量物体之间的距离。脉冲法测量距离的精度一般是在+/- 1米左右。另外,此类测距仪的测量盲区一般是15米左右。 激光测距是光波测距中的一种测距方式,如果光以速度c在空气中传播在A、B两点间往返一次所需时间为t,则A、B两点间距离D可用下列表示。 D=ct/2 (1-1) 式中: D——测站点A、B两点间距离; c——光在大气中传播的速度; t——光往返A、B一次所需的时间。 由式(1-1)可知,要测量A、B距离实际上是要测量光传播的时间t,根据测量时间方法的不同,因此激光测距仪通常可分为脉冲式和相位式两种测量形式。 但是激光测距仪的成本过高,而且用于人体和电脑之间测距过于奢侈,还有一个重要原因,激光对人眼有一定的伤害,故不可取。 方案二:红外线测距 红外线测距是利用红外光来传送控制指令信号,因此,作为红外测距中的红外光发射器件的红外发光二极管和红外光接收器件的红外光敏管,是构成红外测距系统的基本器件。 红外线发射器件是最长用的为红外发光二极管,它与普通发光二极管的结构 原理以及制作工艺基本相同,是只有一个PN结的半导体器件,只是所有的材料不同,制造红外发光二极管砷化钾,砷铝钾等,其中应用最多的是砷化钾。 红外发光二极管一般采用环氧树脂,玻璃,塑料等封装,除白色透明材料封装外,还可见到用蓝色透明材料封装的。红外发光二极管按发光功率的大小,可分为小功率,中功率,大功率三种。另外,红外发光二极管除顶面发光型外,还有侧面发光型。小功率管一般采用全塑封装,也有部分是采用陶瓷底座,顶端用玻璃或环氧树脂透镜封装的,中大功率管一般采用带螺纹金属底座,以便安装散热片。随着发光功率得提高,相应体积的管子也增大。 影响红外发光二极管工作状态的主要参数为:正向工作电流I、光功率P、峰值波长λp、反向漏电流Ir、相应时间t0。其中在测距方面应用时,对红外发射管工作状态影响最大的是:正向工作电流I、光功率P、峰值波长λp。正向电流的大小直接影响管子能否正常工作,只有正常管子正常工作时才能发出红外光;光功率是指输入到发光二极管的电功率转化为光输出功率的那一部分。光功率越大,发射距离越远,因此光功率会影响到红外测距的测距长度。还有峰值波长指红外发光管所发出近红外光中,光强最大值所对应的发光波长,在选用红外接收管时要注意,其峰值波长应尽量靠近红外发射管的峰值波长λp。 我们知道半导体具有光电效应,即用光照半导体,可使半导体的电阻率发生变化。利用半导体的光电效应可以制成光电二极管,不同的半导体材料对不同波长的入射光的响应是不同的。 光敏二极管有顶面受光和侧面受光两种形式。它也是采用塑料、玻璃、环氧树脂等材料封装。 其中影响光敏二极管工作状态的主要参数为:光电流IL、暗电流ID、反向工作电压UR、峰值波长λp。在测距方面应用时,对红外发射管工作状态影响最大的是:光电流IL和峰值波长λp,光电流指在一定反向电压下,入射光强为某一定值时流过管子的电流。光敏二极管的光电流一般为几十μA,并与入射光强成正比。所以可以利用这个原理把光敏二极管作为红外接收管,当接收到一定的红外光时,电流会发生变化,可以作为系统的响应信号。峰值波长λp指光敏二极管光谱响应最灵敏的波长范围,一般为0.88μM-0.94μM。这个是接收管能接收到红外信号的关键,只有光敏二极管的峰值波长和红外发射管的峰值波长匹配时,光敏二极管才能很好的接收到红外光。 红外传感器的测距基本原理为红外发射电路的红外发光管发出红外光,经障碍物反射后,由红外接收电路的光敏接收管接收前方物体反射光,据此判断前方是否有障碍物。根据发射光的强弱可以判断物体的距离,由于接收管接收的光强随是随反射物体的距离变化而变化的。因而,距离近则反射光强,距离远则反射光弱。 因为红外线是介于可见光和微波之间的一种电磁波,因此,它不仅具有可见光直线传播、反射、折射等特性,还具有微波的某些特性,如较强的穿透能力和能贯穿某些不透明物质等。红外传感器包括红外发射器件和红外接收器件。自然界的所有物体只要温度高于绝对零度都会辐射红外线,因而,红外传感器须具有更强的发射和接收能力。 由以上红外测距的发射器件、接收器件的参数和其测距基本原理得知,其测距方式不适合本设计。 方案三:超声波测距 超声波传感器是利用压电效应的原理,压电效应有逆效应和顺效应,超声波传感器是可逆元件,超声波发送器就是利用压电逆效应的原理。所谓压电逆效应,是在压电元件上施加电压,元件就发生形变,既逆变。已极化的压电陶瓷上施加极性的电压,外部⊕电荷与压电陶瓷的极化⊕正电荷相斥,同时外部⊖负电荷与极化⊖负电荷相斥。由于相斥的作用,压电陶瓷在厚度方向上缩短,在长度方向上伸长。若外部施加电压的极性变反,电压陶瓷在厚度方向上伸长,在长度方向上缩短。超声波测距模块上就有两个这样的传感器,一个作为发射,一个作为接受。 如果需要测距,则测距模块电路控制超声波发射装置向某一个方向发出超声波并且开始计时,超声波在空气中的传播速度为ν,当超声波传播到被测物体时就会立即被反射,然后通过超声波接收装置接收,接收器接到超声波时暂停计时,根据时间差t就可以知道距离了,这与雷达测距原理相似。 (S=ν×t2m) (1-2) 超声波方向性强,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在移动机器人的研制上也得到了广泛的应用[6-13]。 例如HR-SR04超声波测距模块(如图1-6),它可以提供2cm-400cm的非接触距离感测功能,精度可以达到3mm,模块包括超声波发射器、接收器、控制电路和接口电路。此模块接口有4个,分别为VCC、GND、Trig、Echo。VCC和GND给模块提供电源和地,那么Trig和Echo则分别和单片机I/O口相连。其工作方式为触发测距,和Trig相连的I/O口发送一个至少10us的高电平信号,模块内部自动发送8个40KHz的方波,自动检测是否有信号返回,若有信号返回,通过和I/O口相连的Echo输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间,(如图1-5)。 测试距离=(高电平时间*声速(340m/s))/2 (1-3) 图1-5 HR-SR04超声波模块测距原理 图1-6 HR-SR04超声波模块实物图 3、报警方式的选择 通常我们所见的报警方式为声和光报警,例如警车上有警灯和喇叭,当遇到紧急状况时就会同时工作,以表警示。 方案一:光电报警 光电报警常用的光电报警器件为LED发光二级管,稍微大一点的为警灯闪烁,通过延时开断这些光电器件让其达到闪烁的功能,便有警示、提示功能,即构成光电报警装置。 (a)LED发光二极管 (b)警灯 图1-7光电报警器件 但是我们的设计主要是在人们使用电脑工作的,人们的目光主要在电脑显示器上,如果使用光电报警则会影响人们正常使用电脑;还有我们的报警方式有很多种,如果使用光电报警,则需要用不同光线颜色区分报警方式,所以要使用不同的光电器件,这样会增大面板面积、增加成本,有悖于我们的设计初衷,所以此方案不可取。 方案二:语音报警 语音报警主要是通过声音信号去提示和警告人的报警方式,其原理首先通过麦克风采集语音信号,由于语音信号为模拟信号,所以要用A/D芯片将其进行模数转换,转换成便于存储和处理的二进制数字信号,然后存储在计算机的存储器里面,如果报警需要则通过指令,调出相应的报警语音文件,然后通过D/A处理,还原成原来的模拟信号,然后再用功率放大器放大D/A输出的信号,再通过扬声器就可以听到报警声音,达到报警效果。 但是由于我们的设计初衷是简单和实用,因此这样的语音报警过于复杂,还有就是成本过高,不适合本设计,故不能选择。 方案三:蜂鸣器报警 蜂鸣器是一种一体化结构的电子讯响器,采用的是直流电压供电,被广泛的应用于计算机、打印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作为发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型,我们一般使用压电式蜂鸣器。压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。多谐振荡器由晶体管或集成电路构成。当接通电源后,多谐振荡器起振,输出1.5-2.5kHz的音频信号,阻抗匹配器推动压电蜂鸣片发声。蜂鸣器发出的声音可以通过控制它的I/O口改变频率而改变。最主要的是这种蜂鸣器驱动电路简单,有的通过一个三极管直接驱动,有的通过驱动芯片驱动,例如ULN2003。而且这种蜂鸣器的体积小、价格低,便于我们使用其作为本设计的报警器。 故选择蜂鸣器作为本设计的报警器。 4、设置方式的选择 设置一般指输入设备,我们常用的输入设备是键盘,所以选用的键盘要以提供快捷、清晰的操作为目的。在电路方面,要以节约控制器I/O资源为重。因此,我们把常见的独立式键盘和矩阵键盘做以比对,发现独立键盘更能满足本设计任务的要求,不需要很多的设置按键去工作,仅要三个独立按键就能完成,一来节约资源,二又满足需求。 5、温度采集方式的选择 常用的温度传感器为热敏电阻,温度不同阻值不同,在电路中所对应的电压不同,再利用A/D将模拟量转换成为可以存储和处理的二进制数字量,然后经过计算便可得出温度值。还有一种集成的温度传感器—DS18B20,它接线方便,仅需要一根线就可以实现与微处理器的双向通信,测温范围大,精度高,不需要外接其他器件,测量结果以9-12位数字量方式串行传送。鉴于DS18B20以上特点,我们的温度采集器件就选用DS18B20(如图1-8)。 图1-8 DS18B20实物图 6、显示方式的选择 LED数码管是我们常见的显示器件,主要用于数字的显示,但是我们本设计需要显示的数据比较多,比如设置提示、测距数据、温度数据、时间数据,因此数码管不能够满足显示要求。依据设计的显示要求,那么我们常见的液晶显示器LCD1602比较适合,它通过字符显示,既能显示数字又能显示字符,而且接法简单,因此选择LCD1602作为显示器件(如图1-9)。 图1-9 LCD1602实物图 1.2.2.3相关软件工具 1、单片机开发软件Keil C51简介 单片机开发中除必要的硬件外,同样离不开软件,我们要把实现的功能通过编程来在硬件上实现,因此我们需要一款适合我们的单片机开发软件。用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。掌握这一软件的使用对于单片机的开发来说是十分必要的。由于现在C语言编程简单易懂,我们也采用C语言编程,因此Keil就是我们的首选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会使开发工作事半功倍。 2、电路设计软件Altium Designer Summer 09简介 Altium Designer Summer 09是Altium公司新出的一款EDA开发工具。Altium Designer Summer 09的发布延续了连续不断的新技术的应用过程。这必将帮助用户更轻松地创建下一代电子设计。同时,我们将令Altium Designer更符合电子设计师的要求。Altium的一体化设计结构将硬件、软件和变成硬件集合在一个单一的环境中,这将使用户自由地探索新的设计构想。在整个设计构成中,每个人都使用同一个设计界面。Summer 09版本解决了大量历史遗留问题。其中就包括了增加更多的机械层设置、增强原理图网络类定义。可以再Windows 7上运行,增加了很多类似于Windows的快捷键,大大缩短了绘图周期。对于初学者而言更加容易上手。 1.4调试方案 对于硬件而言,调试工作主要使用示波器和万用表去测量相应的引脚或者位置的波形或者电压,来验证硬件工作状态是否正常;对于软件主要是下载在硬件上面,让其运行,来验证是否达到预期效果。 1.3 论文章节安排 本论文共有五章。第一章是绪论,主要阐述了本设计中的基本原理和系统总体方案设计。第二章是硬件设计,详细阐述了硬件总体功能、超声波测距模块、单片机最小系统的硬件设计。第三章是软件设计,详细阐述了测距、显示、报警等功能的软件设计。第四章是调试与分析,按照调试方案,验证各个模块的功能,并对调试过程中产生的问题进行了分析与总结。第五章是系统设计的结论与展望,在结论里对整个系统的设计结果作了简单的总结,展望则根据系统工作中存在的问题提出了一些相应的改进方法。 第2章 硬件的设计 本章主要从硬件的功能出发,对整个系统的硬件做出详细的设计,主要包括:单片机最小系统的设计、超声波模块电路设计、按键电路设计、温度采集电路设计、报警电路设计和LCD1602与单片机接口电路设计。并且最终要绘制出电路原理图和PCB图。 2.1系统硬件的功能 根据第一章的确定的方案,我们首先要进行整个系统的硬件设计。硬件的设计则主要根据硬件所要达到的功能而进行,以设计方案提出的功能确定硬件所要实现的功能。 1、单片机最小系统的功能 单片机最小系统为整个系统提供控制功能,也是后面软件运行的载体,是整个系统的大脑。 2、超声波模块电路的功能 超声波测距电路也是整个系统的关键,它为测量人与电脑之间的距离提供了硬件支撑。由于这是个模块化电路,那么主要设计其和单片机的接口电路,保证供电外还要和单片机I/O口进行连接,以便控制。 3、温度采集电路的功能 DS18B20温度采集传感器电路则是温度采集显示的基础,有了这个电路模块就可以实现温度的采集而且在这个芯片内直接实现温度到电信号的转变再到数字量的转变,然后直接使用单片机一个I/O口单线通信,读取温度数据,大大方便了我们的使用。 4、按键电路的功能 按键电路虽然简单,但是它是唯一的系统输入方式,通过单片机扫描按键来实现安全距离设置,报警温度设置。 5、报警电路的功能 这个的电路主要功能驱动蜂鸣器发出声音,用作提醒用户。 6、LCD1602与单片机接口电路功能 在本系统中还有个不可或缺的部分就是显示电路部分,由于LCD1602液晶显示模块是集成的电路只需要设计接口电路即可工作,那么其主要功能就是保证该接口能给LCD显示模块供电,可以通过单片机和其连接保证数据读写。 2.2 硬件总体设计 本设计的硬件部分主要由:单片机最小系统、超声波测距电路、按键设置电路、温度传感器电路、报警电路、LCD1602显示部分组成(如图2-1)。 其中单片机最小系统的设计和超声波测距的设计最为关键,他们的硬件设计之间关系到本设计的成败,因此硬件的设计主要先从单片机最小系统电路入手,由于超生测距模块是焊接好的,只需要在单片机上设计相应的接口即可。 LCD1602显示接口电路 如果测试单片机最小系统工作正常,接下来再加上要求的温度采集电路、报警电路、按键设置电路和LCD1602显示接口。最后完成整个系统硬件的设计。 单片机最小系统 报警电路 超声波测距电路 温度采集电路 按键输入电路 图2-1硬件总体框图 2.3硬件详细设计 2.3.1 单片机最小系统设计 2.3.1.2时钟电路 和AT89C51类似,STC89C52的振荡器也有两种组成方式:片内振荡器和片外振荡器。本系统采用片内振荡器。单片机芯片引脚XTAL1、XTAL2内部有一个反相器,在这两脚之间接上一个谐振器和两个电容,就形成一个振荡器,振荡频率取决于外接谐振器的固有频率。单片机晶体谐振器可用石英晶体和陶瓷两种,常用石英晶体谐振器,并因此把振荡频率称为晶振频率。片内振荡器的组成电路如图2-1所示。 STC89C52单片机晶振频率可从0Hz~80MHz。不过,单片机晶振频率的数值通常选择为fosc=6MHz,11.0592MHz,12MHz等三种,或者选fosc=1MHz。晶振频率越高,电源电流越大,功率消耗越大。应当在保证控制器性能的前提下选择尽可能低的晶振频率。对石英晶体,电容C1,C2=30pF±10pF,典型值33pF;对陶瓷谐振器,电容C1,C2=40pF±10pF,典型值39pF或47pF。 本设计选用石英晶体振荡器,fosc=12MHz,C1,C2=30pF。 图2-2片内振荡器时钟电路 2.3.1.3复位电路 单片机的复位包括初始化和从头开始工作这样连续的两步。单片机复位引脚Reset接收高电平进行初始化;接收低电平,开始工作。也就是说单片机接收正脉冲开始复位,在正脉冲的下降沿启动单片机。单片机正常工作期间,复位引脚Reset需要一直保持低电平。工作过程中引脚Reset一旦接收到一个正脉冲,就会再次进行复位启动。 为可靠完成复位,单片机要求Reset引脚施加的正脉冲脉宽不小于2个机器周期(2µs)。设计复位电路的要求就是确定电阻电容值,使其时间常数达到2个机器周期的复位最小正脉宽要求。本设计中晶振频率fosc=12MHz时,机器周期T=1µs,要求加在Reset引脚的正脉宽不小于2µs。 当单片机上电后,因为电容两端的电压不能突变就会使RST端瞬间产生一个大约为+5V的电压,而CMOS单片机最小输入高电平电压Umin=3.5V,它瞬间产生的电压是大于3.5V的,因此RST接收高电平进行初始化。此后+5V对电容C充电导致RST端电压迅速下降使它变为低电平,单片机开始工作。根据上述要求,本设计R23=10K,C值取10µF。 系统上电运行后需要复位,一般都是通过手动复位即带电复位来完成的。根据以上考虑,本设计选用手动复位和上电复位相结合的方式,如图2-3所示。 图2-3复位电路 2.3.1.4电源电路 USB简单易懂与自制的变压器产生的5V供电系统相比,USB供电电压为5V更加安全,最重要的是制作过程要比稳压电源5V供电简单的多,它所提供的功率不超过2.25W,最大输出电流为500mA,电压一般为5V±5%,这里的偏差可以通过接入旁路电
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服