钟东升无线收发通信10-13100731122_第1页
钟东升无线收发通信10-13100731122_第2页
钟东升无线收发通信10-13100731122_第3页
钟东升无线收发通信10-13100731122_第4页
钟东升无线收发通信10-13100731122_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1、桂林理工大学本科毕业设计·论文学 号: 3100731122 题目类型: 设计 (设计、论文、报告)桂林理工大学GUILIN UNIVERSITY OF TECHNOLOGY本科毕业设计(论文)题目: 基于单片机的超声波视力保护器设计 学 院: 信息科学与工程学院 专业(方向): 通信工程 班 级: 通信10-1班 学 生: 钟东升 指导教师: 张飙 2014年5月20日27摘 要为避免因非标准坐姿这些坏习惯的产生和发展,而导致近视、斜视、驼背等疾病的在学生中的高发生率,本文针对视力保护领域,提出一种在单片机和超声波的基础上设计的视力保护仪。在基于单片机的实际生产应用的大背景下,通过

2、对基于89C52单片机的语言编程进行软件设计,运用单片机的定时功能实现操作,在超声波技术的理论基础上,通过超声波接口对超声波信号接收进行调整输出,实现硬件设计。超声波视力保护器是以单片机运用与超声波技术相结合,软件设计与硬件设计相对应,通过光强度信号、超声波信号及时间定时信号三者共同控制,实现报警功能,进行自动控制视力保护。本文完成了基于单片机的超声波视力保护器的设计,详细介绍了视力保护器的软件编程过程和硬件设计及制作过程,并给出了各个过程中的难点问题及相应的解决办法,且该视力保护器在实践运用中证明,可实现自动视力保护功能,方便使用,操作简单,具有实用性和推广性。本设计难点在于如何实现视力保护

3、以及如何准确调试电路,意在通过基于单片机的超声波视力保护器设计,应用于相关视力保护方面的研究和产品开发,有助于超声波技术的实际运用,留下一些可靠的、有效的信息和数据,作为进一步深入研究的基础。关键词:单片机;超声波;视力保护器Design of Ultrasonic eye protection Based on MCUStudent:ZHONG Dong-sheng Teacher:ZHANG BiaoAbstract:In order to avoid the occurrence and development of students sitting irregularities cau

4、sed by myopia,strabismus, humpback and other diseases, This paper presents a design method based on single chip ultrasonic vision protector. Mainly introduced in the application of single-chip in view of the actual production of the background,By 89C52 microcontroller-based programming lan

5、guage for software design, tThe use of single-chip timing to achieve operating, by ultrasonic interface to adjust output ultrasonic signal reception, the hardware design.Eye protection is a microcontroller ultrasound combined with ultrasound technology to use, software design and

6、 hardware design correspond to the light intensity signal by ultrasonic signals , the timing signal three times the common control, alarm function, automatic control of eye protection. Paper completed Based on Ultrasonic Eye protection design, detailing the process of software program

7、ming and hardware design and production process of eye protection, and gives each process difficult problems and the corresponding solutions,and the vision protection is demonstrated in practical application, automatic visual protection, easy to use, practical and promotional. Th

8、e design challenge is how to achieve the vision and how to accurately debug circuit protection, intended by the microcontroller-based design of ultrasonic eye protection, eye protection is applied to relevant aspects of the study and product development to help the practical application of

9、 ultrasonic technology, leaving some reliable and effective information and data as the basis for further research.ound technology.Key words:Micro Controller Unit;ultrasonic wave;eye protection目 次摘要IAbstractII1 绪 论11.1 课题研究背景与意义11.2 课题主要研究内容11.3 本文结构安排22 方案设计32.1 设计要求32.2 总体设计33 硬件设计与制作43.1 电源系

10、统43.2 核心控制系统43.3 测距系统63.3.1 测距系统设计63.3.2 测距系统原理63.3.3 测距系统制作103.4 光强度检测系统113.5 报警系统123.6 显示系统133.7 定时报警系统144 软件设计154.1 软件设计总流程154.2 子程序设计154.2.1 计时子程序154.2.2 报警子程序174.2.3 超声波传感器子程序184.2.4 测光强子程序194.3 主程序设计225 安装调试265.1 安装265.1.1 检查元器件265.1.2 焊接元器件265.2 调试266 结论27致 谢29参考文献301 绪 论1.1 课题研究背景与意义目前,近视问题已

11、经成为困扰广大学生与家长的重点问题,配戴近视眼镜降低近视度数、激光手术消除近视眼等技术的兴起,让预防近视保护视力成为了人们共同关注的问题。据调查研究表明,采用非标准的读写姿势、看电视和用电脑的时间太长、读写时光照强度差等,都是导致学生近视的原因,但是,阅读和写作的姿势不正确还是产生近视的最重要诱因。在阅读和写作中的学生,标准姿势应是书本距离眼睛大于有一尺,书桌与身体应该相隔一个拳头远近,且要在标准范围内的合适亮度中进行。在越来越大的压力和越趋激烈的社会竞争这样的环境压迫下,学生学习的时间越来越长,在社会科技发展越来越猛烈的趋势下,电脑电视的普及,也会造成学生用眼时间的增多,而不正确的用眼会导致

12、视力急剧下降,给生活带来不便。因此,视力保护器的产生对学生视力的保护至关重要。视力保护的研究源于国外。国外学者趋向于研究产生近视的内因,他们认为,要降低发生近视的概率跟合理的饮食营养搭配有关,要多吃鱼和新鲜的蔬菜才能有效得保护视力,而且要有正确的学习习惯,才能预防近视。当然,国外的研究是基于他们国家的教育制度的基础上,由于跟中国的教育制度存在一定的差异,国外的研究结论并不能完全适用于中国。在中国,有许多的电子公司生产的视力保护器,主要是称为视宝或读写姿势矫正装置,通过语音提示不良或者非标准坐姿来提醒使用者进行调整,可以纠正使用者的读写姿势,但是由于现有的视力保护器功能单一,具有很大的局限性,与

13、人们的多种需求不符,还存在着很大的差距,无法满足使用者的要求,也不能从根本上起到保护视力的作用。在学习压力日趋增大,社会竞争日益激烈的大背景下,一个具有良好实用性的视力保护装置对学生来说显得越来越重要1。1.2 课题主要研究内容基于保护人们视力和预防视力的目的,本文提出一种在单片机和超声波的基础上的仪器设计方法,即在单片机的超声波基础上的视力保护器的设计。课题的主要研究内容是在基于单片机的实际生产应用,通过对基于89C51单片机的语言编程进行软件设计,运用单片机的定时功能实现操作,在超声波技术的理论基础上,通过超声波接口对超声波信号接收进行调整输出,实现硬件设计。超声波视力保护器是以单片机运用

14、与超声波技术相结合,软件设计与硬件设计相对应,通过超声波信号、传感器信号及时间定时信号三者共同控制,实现报警功能,进行自动控制视力保护。设计主要采用理论与实际相结合的方法,对于主电路的设计是基于89C52单片机芯片作为整个电路的核心,整体思路下,然后选用相应的基于合适性价比和参数的元件,而后进行各单元电路的设计,最后在计算机上对电路进行仿真分析,进行相应的功能的调试工作。本次设计中,选用器件为:89C52单片机、超声波传感器、光敏电阻、蜂鸣器用来作为报警系统。1.3 本文结构安排为达到本课题的研究目的,更有条理地完成课题的研究内容,本文主要分为五大部分,分别介绍了课题研究背景与意义、主要研究内

15、容和本文结构安排;硬件设计与制作;软件设计;安装调试。具体的论文结构安排如下所示:第一部分:介绍本课题的研究背景和意义,强调超声波视力保护器设计的必要性,总结课题的主要研究内容及阐述了本文结构安排。第二部分:完成超声波视力保护器的可行方案设计,并从中比选出最佳设计方案。第三部分:完成超声波视力保护器各个组成系统的硬件设计与制作。第四部分:完成超声波视力保护器各个组成系统的软件设计。第五部分,完成本设计的总体安装与调试,并分析解决调试中遇到的问题。最后,本设计进行总结。2 方案设计2.1 设计要求本设计内容为基于单片机的超声波视力保护器设计,要求设计成品达以下要求:(1) 出现以下三种情况时,视

16、力保护器将发出声音起到警示作用:1) 当使用者眼睛与桌面距离小于30厘米时,即坐姿不正时;2) 当使用者处于光线不足的环境读写时;3) 当使用者用眼超过45分钟时,即需停下来休息保护视力。(2) 可调节视力保护器的检测光线灵敏度,根据需要设置亮暗。(3) 视力保护器电路安全可靠,在做出实际模型时同样可以实现相应的功能。2.2 总体设计本设计中,超声波视力保护器主要的控制系统为核心组件,即89C52单片机,报警系统分为三方面:(1) 超声波测距传感器,用于检测使用者脸部与桌面之间的远近,使眼睛与桌面距离不得小于30厘米,否则将发出声音作为提醒用户注意坐姿的警告;(2) 光敏电阻用以采集光线信号的

17、强弱,用来判别光线强度是否适合读写,若光线强度不足,将发出警告声提醒使用者;(3) 单片机的内部定时器/计数器,用于提醒学生要注意时间,不要用眼过度,当内部定时器的计数到达45分钟,表明用眼时间已到达45分钟时,视力保护器自动提醒功能开启,产生警告声提醒使用者停下读写,保证休息时间,保护视力。总体设计框架如下图所示23:电源系统STC89C52核心控制系统光强度检测系统超声波测距系统蜂鸣器报警系统图2-1 总体方案设计框图3 硬件设计与制作3.1 电源系统 由于本系统是由电池供电的,我们考虑了以下为系统供电两种选择:(1) 选用9V的电源,即1.5 V干电池共6节,为系统主电路提供电源动力。经

18、过实践表明,总体电路工作时,单片机、超声波传感器和发声报警电路处于稳压电路,可以满足系统的要求,和电池更换方便,易于操作。(2) 选用蓄电池稳压后为单片机、超声波传感器稳定提供电源,蓄电池为12V。蓄电池的优点是电流驱动性能好、可以稳压输出,但其体积过大的缺点也十分明显,还有携带不便,更换成本高,在发声报警器上使用极为不方便。因此放弃此方案。综上所述采用方案(1)。电源采用6节1.5V电池供电,而后选择7805稳压芯片来稳定电压,将电源电压稳定为5V。用来给超声波传感器、STC89C52单片机提供动力,能充分满足总系统的电力需求,且在一定程度上节约电源。电源系统的电路图设计思路如下图所示。图中

19、电容用于补偿由于电感产生的无功功率,减少线路损耗;电阻用于防止正负极直接连通;发光二极管用于方便看出通电与否。9VVin1GND2Vout3VW-1sw-2470uFC4103C5CAPD2LED2KR5GNDGNDVCC12P2图3-1 电源系统电路框图3.2 核心控制系统单片机的优势在于易于操控、携带方便、反应快。核心控制系统可选择的有许多,但本设计最终采用89C52单片机,因为其可实现自动报警与提醒的基本功用,同时可以判别超声波传感器所得到的距离的远近,以及分析光敏电阻接收的光照强度进行等级分类。单片机可充分发挥其便于携带、性价比高、控制功能较强及可位寻址操作功

20、能等优点。故STC89C52单片机对于本次设计核心的控制系统是一个非常好的选择。图3-2 STC89C52单片机芯片原理图STC89c52单片机片内含有掩膜ROM型程序存储器。因为这种只读存储器中的程序要由单片机生产厂制作芯片时为用户固化于片内,所以只适用于批量极大、程序要永久性保留且不会修改的场合。其主要组成部分为:(1)中央处理器(CPU)。它是单片机的核心,包括运算器和控制器两个主要组成部分,用于实现运算和控制功能。运算器主要包括算术逻辑运算部件(ALU)、位处理器、累加器A、寄存器B、缓存器TMP1和TMP2、程序状态字寄存器PSW以及十进制调整电路等。其主要功能是实现数据的算术运算、

21、逻辑运算、位操作及数据传送等。控制器主要由时钟和时序电路以及一些控制寄存器组成。其主要功能是协调整个单片机的工作,产生时序脉冲和提供控制信号等4。(2)数据存储器。MCS-52系列单片机芯片数据存储器共有128个存储单元,用于存放可读写的数据。为了与外部扩展的数据存储器相区别,通常称芯片内部的数据存储器为内部数据存储器,简称内部RAM。(3)程序存储器。89c52芯片内部有4KB掩膜ROM用来存放程序和原始数据。通常称之为内部程序存储器或内部ROM。(4)定时器/计数器。MCS-52共有两个16位的定时器/计数器,以实现定时和计数功能。(5)并行I/O口。MCS-52共有四个8位的I/O口(即

22、P0、P1、P2和P3),用以完成数据的并行输入/输出。(6)串行I/O口。MCS-52有一个全双工串行口,以实现单片机和其他计算机或设备之间的串行数据传送。(7)中断控制系统。MCS-52共有5个中断源,分高和低两个优先级别。3.3 测距系统3.3.1 测距系统设计市场上一些视力保护器是采用红外热释电传感器来检测使用者坐姿是否正确。但经过研究发现,由于红外热释电传感器原理是当使用者坐姿发生变化,一个由高到低的电信号就会由红外热释电传感器输出,传感器敏感度高,当人只是轻微的移动,视力保护器也会报警,误报警的情况很多,使用不便。而选择超声波传感器,通过检查学生的脸部与桌面的距离远近的实际值来判断

23、坐姿,则更为准确。当所测的距离小于30厘米时就会向核心控制系统发出提醒的信号。超声波传感器的优势在于不仅能够满足视力保护器的测距性能,而且体积小,操作简单,性价比高,能更好地实现超声波视力保护器的推广。因此选择超声波传感器。3.3.2 测距系统原理3.3.2.1 超声波的衰减特性声波的波段频率如果比20千赫兹大,则是超声波。超声波在固液气体中都可进行扩散,但速度各不相同。其属于在弹性介质中的机械振荡,方向可以分横纵向两种,存在折射和反射现象。图3-3 声压在不同距离下的衰减特性超声波的衰减特性是,超声波在扩散的过程中,超声波的强度会随传播距离逐渐增大而有规律地衰减。是因为在空气中,超声波传播的

24、过程当中会有能量的损失,而这种损失是由于衍射扩散和介质吸收造成的。根据图3-3可知,超声波在传播过程中,当频率逐渐升高,衰减逐渐变大,传播的有效长度逐渐变短。由此可见,超声波传感器可以检测的可靠距离不是独立存在的,它会因为超声波的衰减特性发生改变。本设计采用了超声波传感器型号为HC-RS04,具有40000赫兹振荡频率,当超声波的信号扩散10米时,强度将衰减到40的SP。3.3.2.2 超声波的电器特性(1) 声压特性表征音量大小的单位是声压级 (S.P.L.),公式如下。S.P.L.= 20logP/Pre (dB)式中, 分母是参考声压,分子是有效声压。如下图所示为几种常用超声波传感器的声

25、压图,从图中可以看出,最高声压值都出现在频率为40kHz时,故此时超声波传感器的声压特性最为明显。图3-4 超声波传感器的声压图(2) 灵敏度特性传感器对回收的声音进行处理分级,可用灵敏度作为其表征单位,公式如下。灵敏度= 20log E/P (dB)式中,“E”为自行产生的电压 (Vrms),“P”为接收声压值(bar)。系统测距范围很大程度受到超声波传感器的灵敏度的影响,如图3-4所示,为几种常见超声波传感器的灵敏度图,从图中同样可以发现,最高声压值都出现在频率为40kHz时,故此时超声波传感器的声压特性最为明显,同样可以说明,在40KHz时所对应的超声波传感器的灵敏度最高。图3-5 超声

26、波传感器的灵敏度图(3) 辐射特性辐射特性是超声波传感器不可忽视的一个重要特性,那如何才能测量出呢?可把超声波传感器放置于水平面,而后测量角度发生的变化,再进行声压变化的测量,比较两者的比例变化,得出其中关系。对于较小的超声波设备外尺寸,更有可能获得更精确的辐射角度。如下面的图3-6所显示,超声波的辐射特性在于常见的常见超声波传感器中的表征图。图3-6 超声波传感器的辐射特性示意图通过对以上研究结果的分析,可以得出以下结论:超声波传感器最佳工作频率在40KHz范围附近,此时超声波传感器可具有最大的声压级和最高的灵敏度。超声波传感器最小的辐射特性则出现在超声波设备外表面尺寸最小时。这为设计中选择

27、最为合适的超声波传感器提供了理论基础。3.3.2.3 超声波的工作原理运用普遍的超声波传感器大多是开放型,其内部结构如图3-7所示。振动器采用谐振,由压电晶片和锥形共振盘构成。超声波是因为振动而产生的,为了能快速可靠地将其向外辐射,且可较为完整地使其集中在振动器的中心点,谐振器做成喇叭形。图3-7 超声波传感器的内部结构图压电陶瓷会受到电压的影响和频率的作用,将产生力学上的变形。由于机械振动,压电陶瓷会产生一个电荷。在这原理的基础上,对振动器加入相应的电信号时,就会因为变形和振动而发射出超声波。反之,当向振动器加入超声波振动时,就会反过来刚才所说的顺序产生对应的电信号。图3-8 超声波传感器的

28、避障原理示意图如图3-8所示,位于的发射器超声波传感器向某一方向发射入射波,在发射入射波的同时就实现计时器的启动,超声波在空气中的传播速度为一定值,而在传播过程里无论遭遇任何较大的阻碍性固体介质,都马上产生反射,当接收器收到反射波时,计时器就马上暂停工作,显示所用的时间。已知超声波传播时的速度因介质不同而不相同,在空气中是定值340米/秒,计时器中显示的时间为t秒,可得入射波发生点和阻碍介质之间的相聚多远,得 s(米),公式如下:s=340t/23.3.3 测距系统制作使用HC-RS04超声波传感器可感知 2厘米 到400厘米的非接触式距离,且现成的精度可达3毫米。该超声波传感器分为发射、控制

29、和接受三大部件。超声波传感器接线如下图示。Vcc是提供的5V电源,GND是地线,TRIG是接收信号,即测距信号的分析,ECHO是反射信号,即对测距信号处理后产生的反应信号输出到核心控制系统。图3-9 超声波传感器实物图图3-10 超声波时序图以上时序图表明你只需要提供一个10us以上的脉冲触发信号,该模块内部将发出8个40KHZ周期电平并检测回波。一旦检测到有回波信号则输出回响信号。回响信号的脉冲宽度与所测距离成正比。由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。故超声波传感器的基本运行理论是: (1) 高电平信号是大于10us的触发范围,用IO接口触发;(2) 可自动判断有没有信

30、号返回,此时传感器通过发送320khz的超声波来监测;(3)当存在信号返回,用IO接口回应高波段信号并进行数据记录,超声波开始发射一直至反射回到传感器的所用时长,即为高电平持续时长。当距离小于设定的距离时,触发报警发声电路工作,发出声音提醒该学生坐直,从而达到保护该学生视力的目的56。3.4 光强度检测系统光强度检测系统可选择采用光照度传感器M124749或光敏电阻。光照度传感器虽然体积小,线性度好,抗干扰能力强,但由于价格昂贵,将导致视力保护器成本过高,难以推广。而光敏电阻则由于价格低廉,性价比高,使用广泛。本次设计采用光敏电阻。由于其对光具有较为灵敏的反应,即敏感性,电阻值的大小可以随照射

31、光线强弱而发生改变,故称为光敏电阻。光线越强,电阻越小,反之,光线越弱,电阻越大。这是由于在电阻中,受到光线激发,原本的稳态电子变成自由电子,故电阻值发生改变。光敏电阻由于其内的光电效应和电极无关,即可使用直流电源,使用和操作更为方便,可便于视力保护器的改进和普及推广7。光强度检测系统采用光敏电阻。光敏电阻是电阻随光线强弱而发生变化的光敏感型电阻。光线越强,电阻越小,反之,光线越弱,电阻越大。由于电阻不同,然后分得的电压也不同。当光敏电阻受到较强的光照照射时,光敏电阻阻值变低,输出端输出高电平,为模拟信号,经1/4LM339(四电压比较器,用其中的一个即可)转换成数字信号然后经反相器传给单片机

32、,此时,传过去的信号为低电平,即光线正常时输出信号为低电平;当光敏电阻受到较弱的光照照射时,光敏电阻阻值为无穷大,输出电压为Vce=0.7v,为低电平,经比较器输出为零,再经反相器作用后输出为1,即光线较暗淡时,总的输出电压为高电平即1。反馈到单片机上,触发蜂鸣器报警8。图3-11 光敏电阻控制电路图上图是光敏控制电路原理图。当光敏电阻受到较强的光照照射时,光敏电阻阻值变低,输出端输出高电平,为模拟信号,经1/4LM339(四电压比较器,用其中的一个即可)转换成数字信号然后经反相器传给单片机,此时,传过去的信号为低电平,即光线正常时输出信号为低电平;当光敏电阻受到较弱的光照照射时,光敏电阻阻值

33、为无穷大,输出电压为Vce=0.7v,为低电平,经比较器输出为零,再经反相器作用后输出为1,即光线较暗淡时,总的输出电压为高电平即1。反馈到单片机上,触发蜂鸣器报警。通过对AD收集得到的光的强度值下的电压值分析,根据光线强度下的理想电压值,设定报警光强度值。3.5 报警系统市场上的视力保护器多采用语音报警,用真人化语音提示使用者读写姿势是否正确,是否用眼过度需要休息。语音报警直接明了,但语音芯片的编程需要专业编程器,不仅价格昂贵而且编程复杂,不便于视力保护器的推广和普及。经综合考虑,本次设计采用蜂鸣器报警。蜂鸣器的主要优点为小巧,简单便捷,易于操控,性价比高。采用蜂鸣器实现三方面报警,也能满足

34、系统的要求,且有利于超声波视力保护器的推广。蜂鸣器采用三极管驱动,驱动原理图如下图所示。图3-12 蜂鸣器驱动原理示意图 三极管C8550主要是做驱动用的。因为单片机的IO口驱动能力不够让蜂鸣器发出声音,所以我们通过三极管放大驱动电流,从而可以让蜂鸣器发出声音,利用单片机的定时功能通过P3.3,产生一个振荡脉冲方波,输出高电平,三极管导通,集电极电流通过蜂鸣器让蜂鸣器发出声音,当输出低电平时,三极管截止,没有电流流过蜂鸣器,所以就不会发出声音。3.6 显示系统 市场上的视力保护器大多采用数码管进行显示。虽然数码管的显示速度快,使用简单,但单一的内容,极小的信息量,不能表达出良好的人机界面。故本

35、次作品中,超声波视力保护器采用LCD1602。因其显示清晰明了,且显示内容丰富,显示信息量大,能很好地弥补不采用语音报警所产生的不足。下图为显示电路,这一次设计采用LCD1602液晶显示9。图3-13 LCD显示电路示意图LCD引脚含义如下:第1脚:VSS为电源地。第2脚:VDD接5V电源正极。第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会 产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。 第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时

36、进行写操作。 第6脚:E(或EN)端为使能(enable)端。第714脚:D0D7为8位双向数据端。第1516脚:空脚或背灯电源。15脚背光正极,16脚背光负极。3.7 定时报警系统 超声波视力保护器的定时报警电路由核心控制系统中的定时计数器和报警蜂鸣器的子电路组成。它的工作原理为通过单片机的定时计数功能完成定时45分钟的计数,45分钟结束后使报警电路发出报警声10。单片机内存在两个可编程的计数器,满足记数功能,可通过编程设置精确的定时时间,作为单片机各项应用功能的需要。它们具有两种工作模式(计数器模式和定时器模式)及4种工作方式(方式0,方式1,方式2,方式3)。在相应的特殊功能寄存器中存放

37、有其控制字,通过对单片机的特殊功能寄存器的编程,你可以很容易地选择最为有效的工作模式,达到想要的运行状态。当定时器/计数器为定时工作方式时,计数器的加1信号由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计数满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。如果晶振为12MHz,则计数周期为:T=1/(12×106)Hz×1/12=1s这是最短的定时周期。若要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如8位、13位、16位等)。工作方式控制寄存器TMOD用

38、于控制定时器/计数器的工作模式及工作方式,它的字节地址为89H。定时器/计数器的两个作用是用来精确的模拟一段时间间隔(作定时器用)或累计外部输入的脉冲个数(作计数器用)。当作定时器用时,在其输入端输入周期固定的脉冲个数,即可计算出所定时间的长度。当89c52内部的定时器/计数器被选定为定时器工作模式时,记数输入信号是内部时钟脉冲,每个机器周期产生一个脉冲使计数器增1,因此,定时器/计数器的输入脉冲和机器周期一样,为时钟频率的1/12。本设计采用的时钟周期为6MHz,记数速度为500KHz,输入脉冲的时间间隔为0.5秒。4 软件设计4.1 软件设计总流程软件设计是确定超声波视力保护器的主要过程,

39、并根据实现功能的主程序设计各硬件电路功能,然后设计子程序的电路,最后再将各子程序与超声波视力保护器主程序相连接。这种软件设计方法结构简单,易于理解。由于各个不同子程序和其相应的硬件的电路是对应的关系,所以容易调试,易于分析和调整。超声波视力保护器主要软件设计流程图如下图所示。测光子程序用于检测光照强度是否符合护眼标准并将结果发送到主程序,测距子程序用于检测眼睛与桌面距离是否符合标准并将结果发送到主程序,计时子程序用于计算用眼时间是否超过规定时限同样将结果发送到主程序,报警子程序用于接收各主程序发送信号并判断是否进行报警11。超声波视力保护器主程序测光子程序测距子程序计时子程序报警子程序图4-1

40、 软件功能框图4.2 子程序设计4.2.1 计时子程序学生的学习时间过长也是导致近视的原因之一,所以适当的限制学习时间就是防近视的一种有效方法,这一个子程序就是计算学习时间长度。其中有两种方法可能做到定时,一种是软件定时,另一种是硬件定时,软件定时占用52单片机的CPU资源,并且不稳定,容易死循环与崩溃。硬件定时就没有这一个问题,本系统的定时采用的是52单片机的两个定时器之一,定时器1。用void time1_int() interrupt 3函数来定时,定时器的初值设定为TH1 = 0x3c;TL1 = 0xb0;10ms后溢出中断,调用服务程序,使得事先定义好的变量value+;当valu

41、e+达到一定值就可以存储秒变量加一,当时长超过设定值时就可以报警,让学生休息12。具体的程序如下: 图4-2 计时子程序流程图主要程序如下:static uint value; /定时10ms中断一次TH1 = 0x3c;TL1 = 0xb0; /50msvalue+;if(value % 6 = 0)flag_200ms = 1; if(value >= 20)value = 0 ;if(xuexi_start = 1) miao +; /加1秒钟if(miao >= 60) miao = 0;fen +; /加1分钟if(fen >= 60)fen = 0;shi +;

42、/加1小时if(shi >= 24)shi = 0;4.2.2 报警子程序 报警部分主要是在距离、光线其中之一不满足设定值的情况下,触动报警系统。程序定位在函数void clock_beep(),将会跟据两个感应器采集到的的数据来做出判断,定义以下几个变量:uchar flag_alarm; /报警变量uint set_d; /距离uchar set_gx; /设置光线的强弱的变量对距离长短、光线的强弱,做出判断,为了防止对学生造成不必要的干扰,要进行5次反复判决才使报警标志位置1,即lag_alarm=1;单片机通过查询标志位而使得蜂鸣器报警。流程图如下:图4-3 报警子程序流程图 4

43、.2.3 超声波传感器子程序超声波测距程序,定义uint set_d变量,程序中使用到另一个定时器0,其中一个用计算学习时长,相比于软件定时,采用定时器中断更加精准。软件流程图如图4-4。这个子程序主要的问题就在于定时器的选择上,主要源代码如下:distance = TH0; /读出定时器0的时间distance = distance * 256 + TL0;distance +=( flag_hc_value * 65536);/算出超声波测距的时间 得到单位是msdistance *= 0.017; / 0.017 = 340M / 2 = 170M = 0.017M 算出来是米 图4-4

44、 超声波传感器子程序流程图4.2.4 测光强子程序 光强的采集使用的是AD0832,AD0832是8位逐次逼近模数转换器,可支持两个单端输入通道和一个差分输入通道,本设计用的单端输入通道。主要是对应时序图来理解。光感连接到AD0832,采集到的数据,显示到1602显示芯和片。程序就会进入ad0832read(bit SGL,bit ODD)中进行相关操作。作为单通道模拟信号输入时 ADC0832 的输入电压是 05V 且 8 位分辨率时 的电压精度为 19.53mV。如果作为由 IN+与 IN-

45、输入的输入时,可是将电压值设 定在某一个较大范围之内,从而提高转换的宽度。但值得注意的是,在进行 IN+ 与 IN-的输入时,如果 IN-的电压大于 IN+的电压则转换后的数据结果始终为 00H1314。图4-5 ADC0832数据读取程序流程图4-6 测光强子程序流程4.3 主程序设计单片机控制电路由89c52单片机的P3.4和P3.5即T0和T1定时/计数器通过单片机的汇编语言来实现!定时时间为50分钟,其计时初值可计算如下151617:50*60=3000s=30000*100ms 100ms用T0定时设置T0工作方式

46、1,30000次用T1计数,设T1工作方式为11。 T0的定时初值为:216-100ms/2us=15536=C3B0H;T1的计数初值为65536-30000=35536=8AD0H其中T0为定时器,T1为计数器,定时器T0定时100ms后,计数器T1计数一次,此时,定时器T0进行中断服务程序ZDT0进行定时器T0循环定时进入下一个定时周期,当满足又一次定时满100ms时,再由计数器T1计数一次,如此循环下去,直到满足计数器T1计数30000次,计数器T1进入中断服务程序ZDT1,其功能是使单片机的P3.0引脚发送一个脉冲触发定时报警发声电路,由定时报警发声电路发出报警信号,使学生意识到已经

47、学习了45分钟了,需要休息一下,进而达到保护学生视力的目的。此时,学生应关闭视力保护器电源,休息后在开启电源以进行节能。开启电源后,定时器T0和计数器T1进行到下一循环,对定时器进行赋值,T0定时,T计数,再进行报警181920。1设计要求满足定时50分钟后报警,其初值计算如下:50min*60=3000s=30000*100ms100ms用T0定时设置T0工作方式1,30000次用T2计数,设T2工作方式为11。T0的定时初值为:216-100ms/2us=15536=C3B0H;T1的计数初值为65536-30000=35536=8AD0H图4-7 计时子程序流程2.LCD1602显示字符

48、流程图4-8 LCD1602显示字符流程3程序为:/*液晶lcd显示*/主要源程序如下:void write_com(uchar com)/写命令函数 lcdrs=0;P0=com;lcd_delay(20);lcden=1;lcd_delay(20); lcden=0;void write_date(uchar date)/写数据函数 lcdrs=1;P0=date;lcd_delay(20);lcden=1;lcd_delay(20);lcden=0;void init_lcd()/初始化函数 lcden=0;/默认开始状态为关使能端,见时序图 lcdrw=0;/选择状态为 写write_

49、com(0x0f);write_com(0x38);/显示模式设置,默认为0x38,不用变。write_com(0x01);/显示清屏,将上次的内容清除,默认为0x01. write_com(0x0c);/显示功能设置0x0f为开显示,显示光标,光标闪烁;0x0c为开显示,不显光标,光标不闪write_com(0x06);/设置光标状态默认0x06,为读一个字符光标加1. write_com(0x80);/设置初始化数据指针,是在读指令的操作里进行的void lcd_delay(uchar x) uint i,j;for(i=x;i>0;i-)for(j=10;j>0;j-);/外

50、部中断0,用做判断回波电平 INTO_() interrupt 0 / 外部中断是0号 tH =TH0; /取出定时器的值 tL =TL0; /取出定时器的值 succeed_flag=1; /至成功测量的标志 EX0=0; /关闭外部中断 /*5 安装调试5.1 安装5.1.1 检查元器件根据硬件设计所选择的的元器件,和设计的各子程序电路图,制定所需购买的元器件清单。根据清单买好元器件后,首先检查各个元器件的好坏,即是否能实现所需功能,按各元件的检测方法不尽相同,要分别仔细认真地进行检测,防止出现错漏。然后要认真核对电路图,看元器件和清单所列相符与否,如果全部正确,开始放置、焊接,避免某一元

51、件发生错误但已经焊接,难以更改。5.1.2 焊接元器件按照设计电路图所示,在电路板上按正确位置安装各元器件,在放置过程中较低的元器件要先放置、焊接,而后再进行较高的元器件的焊接。容易损坏的元件要最后进行焊接,集成芯片的焊接需要特别注意,焊接持续时间要小于10s,以防止烫坏芯片,还要注意芯片的安装方向是否正确。5.2 调试调试步骤如下:(1) 开启电源键,打开显示系统,若出现亮光,则电源系统正常运行。(2) 调试显示系统,按键控制液晶屏显示,若正常显示,则说明显示部分无误。(3) 调试超声波传感器,使其灵敏度达到理想效果。(4) 调试光敏电阻,调整光线的亮暗,设定光敏电阻报警值。(5) 调试蜂鸣

52、器电路,使超声波传感器测距小于临界值或光线强度小于报警值,观察蜂鸣器是否正常工作。 (6) 调试定时报警器,在限定时间后是否出现报警。可进行多种方式多样化调试,根据成品出现情况的不同而不同。出现问题时,应从问题的根源考虑,不仅要学会解决问题,更应探究问题的由来,尽量从开始就避免问题的出现,对产品进行改良。6 结论 本次毕业设计从培养良好的读写习惯、预防近视的角度出发,在基于单片机的实际生产应用的大背景下,在超声波技术的理论基础上,提出了一种基于单片机的超声波视力保护器的设计方法,不仅在计算机上通过对基于89C52单片机的语言编程进行软件设计,而且在硬件上实现了这种设计方法的实践,完成了设计的硬

53、件制作。经过实践测试可得,该设计方法可行,满足设计目标,且能完成预想的各项基本功能。设计中系统由各个子系统构成、其中测光系统是由光敏电阻构成的电路,能对用眼环境的光照强度做出判断;测距系统是由超声波传感器构成的电路,能较精准地测量出人眼和桌子间的距离,并做出判断;计时系统是由单片机内部设定的,测试使用时间是否超过了规定时间;报警系统是又蜂鸣器电路组成的,接受单片机发送的信号而后判断是否发出警报声。本设计以单片机运用与超声波技术相结合,软件设计与硬件设计相对应,通过光强度信号、超声波信号及时间定时信号三者共同控制,实现报警功能,进行自动控制视力保护。设计成果使用方便,操作简单,具有实用性和推广性,不仅可以用于生产普及,也可以作为科研成果进一步探索,具有较高的价值。本次毕业设计的创新点: (1) 运用超声波传感器测距功能矫正坐姿,光敏电阻电路检测光照强度,操作简单,使用方便,系统稳定。(2) 设计不仅仅局限于矫正坐姿问题,也考虑了光照强度和使用时间的问题,对设计的系统功能有了进一步的拓宽,留有进一步研究的很大空间。本设计意在通过基于单片机的超声波视力保护器设计,为视力保护的研究发展和超声波技术的运用留下一定可靠有效的信息和数据基础。但是由于时间关系和知识的局限性,本次设计也存在一些不太完善的地方,例如如何确定光照强度报警值以及如何准确调试电

温馨提示

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

评论

0/150

提交评论