ImageVerifierCode 换一换
格式:DOCX , 页数:35 ,大小:49.37KB ,
资源ID:2797294      下载积分:10 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2797294.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     索取发票    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(多功能视力保护器的设计--毕业论文设计.docx)为本站上传会员【可****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

多功能视力保护器的设计--毕业论文设计.docx

1、多功能视力保护器的设计 引言引言引言引言 . 1 1.1 选题背景 . 1 1.2 视力保护器的现状 . 2 1.3 本文主要研究内容 . 3 2222 系统硬件设计系统硬件设计系统硬件设计系统硬件设计 . 3 2.1 89c52单片机简介 . 4 2.2 超声波测距报警电路 . 5 2.3 89c52单片机的中断系统 . 7 2.4 光线报警电路 . 8 2.4.1 光敏电阻控制电路 . 8 2.5 定时报警电路 . 9 2.5.1 单片机控制电路 . 10 2.5.2蜂鸣器报警发声电路 . . 11 3 3 3 3 开发系统软件设计开发系统软件设计开发系统软件设计开发系统软件设计 . 11

2、 3.1 系统软件设计 . 11 3.2 主要程序介绍 . 15 4444 结论结论结论结论 . 18 参考文献参考文献参考文献参考文献 . 19 致谢致谢致谢致谢 . 20 外文页外文页外文页外文页 . 21 多功能视力保护器的设计 刘盘石 摘要摘要摘要摘要:本文提出了一种基于单片机的多功能视力保护器。讨论了89c52型单片机的硬件电路和软件设计。并在此硬件基础上实现传感器报警电路、光线强度报警电路及定时报警电路。目前各种单片机控制的理论和实际应用系统的设计正在引起人们的广泛关注。主要为单片机的发展概况以及视力保护器的发展概况,并通过89c52单片机实现控制电路并利用c语言编程产生脉冲的方法

3、,以及利用单片机的定时功能和汇编语言实现定时的方法。可以知道单片机控制的原理及设计和系统主要硬件组成部分及其作用,给出了整个系统软件流程图和部分子程序流程图。介绍了该技术的应用前景和推广价值。而且提出了本系统尚需解决的一些问题,并给出了可能解决这些问题的途径和方法。本设计以超声波技术为主要理论依据。具体就视力保护器的理论与硬件的设计进行了研究。 基于实验室现有的硬件平台,本文的研究目标是完成多功能视力保护器的硬件开发与设计,并完成相应的硬件制作。其研究内容分为两部分:对视力保护器的硬件设计和硬件制作。在设计中存在着如何有效的提高视力保护以及对硬件电路准确调试的难点。在硬件设计中,基于超声波技术

4、设计的多功能视力保护器电路,通过超声波接收头对接收的超声波信号进行调制输出,实现控制声光提示电路工作的理论研究有一定的研究意义。 本文设计出了基于超声波发射与接收技术的多功能视力保护器。通过实践证明该视力保护器可行且可靠性良好,使用方便。本文期望通过该电子硬件的制作和理论的研究,能为后期进一步 设计多功能视力保护器并采取合理措施提高视力保护的有效性提供可靠和有效的数据源和信息依据。 关键词关键词关键词关键词:传感器报警、光线强度报警、定时器、c语言 、超声波 引言引言引言引言 学生近视在我国已成为一个日益严重的社会问题。国家有关部门对许多职业均有明确的视力要求,而一旦近视,花再多的钱医治也不可

5、能恢复原有的视力。专家认为造成学生近视的最主要原因是读写姿势不正确。国家教委规定:学生在读写时,应在一定亮度下,眼睛离读物一尺,身离书桌一拳。学习压力如此之大,学习时间如此之多,那么,有一个保护视力的装置便显得越来越重要。 2 1.1 选题背景 目前,青少年视力低下,已成为国内外共同关心的公共卫生问题。调查显示 50%以上的学生及家长缺乏视力保健最基本的科普知识,不懂得“近视与盲只差一步”的危害性,因而有 41.6%视力低下的学生并未采取任何矫正措施,又缺专业机构的治疗。 因此我们进行了多功能视力保护器的研究设计。通过创造健康的读写环境和科学方式,避免因长期读写(现代意义的读写包括:看书、写字

6、、用电脑、看电视等)而导致的近视、驼背、脊柱侧弯、斜视、颈椎病等疾病的发生和发展,用非医药的手段,防范和解除因不良读写习惯,避免给人们身体带来伤害。 近视,作为一种现代通病,几乎没有办法根治它。目前的激光切除手术其实是伤害了人体的自然完整,戕害着身心的健全。于是,百年来人们沿用着“玻璃凹凸”的笨办法维系着人们对外界求索的目光。 研究表明,造成近视99的原因,源自于孩子们平时读书、写字时坐姿不标准,导致眼睛距离书本太近所致。大部分孩子喜欢趴在课桌上读写,并且老师、家长屡教不改,很难扭转习惯,是家长一直头疼的事。 1.2 1.2 1.2 1.2 视力保护器的现状视力保护器的现状视力保护器的现状视力

7、保护器的现状 现在国内外已经有许多电子公司都有自己公司生产的视力保护器。国内这方面的研究现状为:在国内生产的视力保护器,又称坐视宝,它能有效的对使用者的坐姿不当进行语音提示。还有国内一些厂家生产的坐姿矫正器。可以纠正看书,写字的不良坐姿。总体看来,国内生产的视力保护器功能特点比较单一,与人们的个性化需求尚有很大的差距。故不能很好的满足广大使用者的需求。 国外也致力于对保护视力的研究,但是他们更侧重于对近视原因的研究。美国德克萨斯大学西南医学中心何于光博士表 示,吃鱼和新鲜蔬菜能够保护视力,降低发生近视的概率。他们认为通过合理的饮食营养搭配,以及正确的学习习惯,对视力的保护能起到事半功倍的作用。

8、 研究证明,市场上真正的多功能视力保护器几乎没有。现有的产品只是侧重视力保护的一方面,功能比较单一,不能从多个角度保护使用者的视力。 现在市场上设计的有以超声波技术为主要理论依据的视力保护器。它就具体就视力保护器的理论与硬件的设计进行了研究。 3基于实验室现有的硬件平台,研究目标是完成多功能视力保护器的硬件开发与设计,并完成相应的硬件制作。其研究内容分为两部分:对视力保护器的硬件设计和硬件制作。在设计中存在着如何有效的提高视力保护以及对硬件电路准确调试的难点。在硬件设计中,基于超声波技术设计的多功能视力保护器电路,通过超声波接收头对接收的超声波信号进行调制输出,实现控制声光提示电路工作的理论研

9、究有一定的研究意义。通过实践证明该视力保护器可行且可靠性良好,使用方便但也存在一些问题,比如说没有光线控制报警的功能,光线也是伤害学生的视力的一个重要因素。该设计通过该电子硬件的制作和理论的研究,能为后期进一步设计多功能视力保护器并采取合理措施提高视力保护的有效性提供可靠和有效的数据源和信息依据。 由于现在国内外大量的市场需求,视力保护器的起步才刚刚开始,存在很大的发展空间,各个国家的很多公司均在此方面展开了研究,相信未来视力保护器一定会得到巨大的发展,为广大的中小学生的视力保护做出根本的保障。1 1.3 1.3 1.3 1.3 本文主要研究内本文主要研究内本文主要研究内本文主要研究内容容容容

10、 鉴于单片机芯片的智能处理功能本设计采用理论计算和实验验证的方法相结合的以单片机芯片为核心的主体电路。首先是对各单元电路进行设计,并选择合适的元器件。在选择元器件时,要注意所选芯片的性价比,对于电阻、电容等常用元件要先进行参数计算后再选择。其次是设计整个电路,并在计算机上对各单元电路进行相应功能的调试仿真!其中单片机芯片选用较为普遍的89c52型,传感器选用水银滚珠型重力传感器,光线报警选用光敏电阻来实现,报警发声系统选用以HFC5219芯片为核心的发声硬件电路。在设计中利用8052型单片机的定时功能即P3.4和P3.5的T0和T1,利用单片机的c语言进行编程。电路通过编程实现自动复位。本次毕

11、业设计的研究内容是设计一个多功能视力保护器。它具备以下功能: 1 当使用者脸部与桌面之间的距离小于20CM时,电路将发出声音提示; 2当读写环境光线照度不足时,电路将发出声音提示; 3当使用时间达到45分钟时,电路自动发出声音提示,提醒使用者注意休息; 4单片机的主频为6KHZ;电路测光报警的灵敏度可调; 5电路可靠,要求通过计算机仿真并且能够实现相应的功能。 真正帮助学生做到国家教委规定:学生在读写时,应在一定亮度下,眼离读物一尺,身离书桌一拳。 42 2 2 2 系统硬件设计系统硬件设计系统硬件设计系统硬件设计 硬件主要以89c52型单片机为核心,功能电路主要包括超声波测距报警电路、光线报

12、警电路、定时报警电路以及报警发声电路等核心电路。利用单片机的c语言。图2是本系统设计的基本框图。2 3 图2系统设计基本框图 2.1 82.1 82.1 82.1 89c9c9c9c55552222单片机简介单片机简介单片机简介单片机简介 89c52单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。 图2-1为89c52单片机的芯片原理图。 89c52单片机片内含有掩膜ROM型程序存储器。因为这种只读存储器中的程序要由单片机生产厂制作芯片时为用户固化于片内,所以只适用于批量极大、程序要

13、永久性保留且不会修改的场合。其主要组成部分为: 5A中央处理器(CPU)。它是单片机的核心,包括运算器和控制器两个主要组成部分,用于实现运算和控制功能。运算器主要包括算术逻辑运算部件(ALU)、位处理器、累加器A、寄存器B、缓存器TMP1和TMP2、程序状态字寄存器PSW以及十进制调整电路等。其主要功能是实现数据的算术运算、逻辑运算、位操作及数据传送等。控制器主要由时钟和时序电路以及一些控制寄存器组成。其主要功能是协调整个单片机的工作,产生时序脉冲和提供控制信号等。 B数据存储器。MCS-52系列单片机芯片数据存储器共有128个存储单元,用于存放可读写的数据。为了与外部扩展的数据存储器相区别,

14、通常称芯片内部的数据存储器为内部数据存储器,简称内部RAM。 C程序存储器。89c52芯片内部有4KB掩膜ROM用来存放程序和原始数据。通常称之为内部程序存储器或内部ROM。 D定时器/计数器。MCS-52共有两个16位的定时器/计数器,以实现定时和计数功能。 E并行I/O口。MCS-52共有四个8位的I/O口(即P0、P1、P2和P3),用以完成数据的并行输入/输出。 F串行I/O口。MCS-52有一个全双工串行口,以实现 单片机和其他计算机或设备之间的串行数据传送。 G中断控制系统。MCS-52共有5个中断源,分高和低两个优先级别。4 2.2 2.2 2.2 2.2 超声波测距超声波测距超

15、声波测距超声波测距报警电路报警电路报警电路报警电路 下面具体论述传感器的结构和工作原理。 图2-2的运用原理是:(1)采用I0口TRIG触发测距,给至少10us的高电平信号;(2)模块自动发送8个40khz的方波,自动检测是否有信号返回;(3)有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S)/2; 6 图2-2.1超声波时序图 以上时序图表明你只需要提供一个10us以上的脉冲触发信号,该模块内部将发出8个40KHZ周期电平并检测回波。一旦检测到有回波信号则输出回响信号。回响信号的脉冲宽度与所测距离成正比。由

16、此通过发射信号到收到的回响信号时间间隔可以计算得到距离。 当距离小于设定的距离时,触发报警发声电路工作,发出声音提醒该学生坐直,从而达到保护该学生视力的目的。5 6 7 图2-2超声波测距报警电路 2.2.2.2.3333 88889c9c9c9c55552222单片单片单片单片机的中断系机的中断系机的中断系机的中断系统统统统 (1)中断概述 中断是由硬件驱动或者软件驱动的信号,中断信号使C5416 DSP暂停正在执行的程序,并进入中断服务程序(ISR)。C5416 DSP既支持软件中断也支持硬件中断: 由程序指令(INTR、TRAP或RESET)请求的软件中断。 由外部物理设备信号请求的硬件

17、中断。 当同时有多个硬件中断被触发时,C5416 DSP按照中断优先级别的高低对它们进行服务。 (2)中断分类 可屏蔽中断。 非屏蔽中断。 (3)中断处理步骤 8 接收中断请求。 应答中断。 执行中断服务程序(ISR)。 (3)中断标志寄存器(IFR) 中断标志寄存器是一个存储映射的CPU寄存器,可以识别和清除有效的中断。当一个中断出现时,IFR中的相应的中断标志位置1,直到CPU识别该中断为止。 该设计在软件编程中需用到单片机的中断系统和中断指令,具体指令和程序见下章。 2.2.2.2.4444 光线报警电路光线报警电路光线报警电路光线报警电路 该电路分为光敏电阻控制电路和光线发声报警电路。

18、其功能是完成由光敏电阻控制的电路在条件满足时发出脉冲,该脉冲作用于89c52单片机的P1.0口,通过检测p1.0口是否为高电平,由中断控制利用P1.1口给出满足发声电路需要的脉冲,再由发声电路发出 声音提醒学生光线太暗了,需要调节光的亮度,进而达到保护学生视力的目的。7 2.2.2.2.4444.1 .1 .1 .1 光敏电阻控制电路光敏电阻控制电路光敏电阻控制电路光敏电阻控制电路 图2-3 光敏控制电路 图2-3是光敏控制电路原理图。当光敏电阻受到较强的光照照射时,光敏电阻阻值变低,输出端输出高电平,为模拟信号,经1/4LM339(四电压比较器,用其中的一个即可)转换成数字信号然后经反相器传

19、给单片机,此时,传过去的信号为低电平,即光线正常时输出信 9号为低电平;当光敏电阻受到较弱的光照照射时,光敏电阻阻值为无穷大,输出电压为Vce=0.7v,为低电平,经比较器输出为零,再经反相器作用后输出为1,即光线较暗淡时,总的输出电压为高电平即1。反馈到单片机上,触发蜂鸣器报警。8 图2-4为LM339的结构图。其中LM339集成块内部装有四个独立的电压比较器,该电压比较器的特点是:(1)失调电压小,典型值为2mV;(2)电源电压范围宽,单电源为2-36V,双电源电压为1V-18V;(3)对比较信号源的内阻限制较宽;(4)共模范围很大,为0(Ucc-1.5V)Vo;(5)差动输入电压范围较大

20、,大到可以等于电源电压;(6)输出端电位可灵活方便地选用。 LM339集成块采用C-14型封装,图2-5.1为LM339原理图的外型及管脚排列。由于LM339使用灵活,应用广泛,所以世界上各大IC生产厂、公司竟相推出自己的四相比较器,如IR2339、ANI339、SF339等,它们的参数基本一致,可互换使用。 2.2.2.2.5555 定时定时定时定时报警电路报警电路报警电路报警电路 报警电路分为单片机控制电路和报警发声电路。它主要通过单片机的定时计数功能完成定时45分钟并使报警电路发出报警声,用以提醒学生休息! 89c52单片机内有两个可编程的定时器/计数器,满足诸如对外部脉冲进行记数,产生

21、精确的定时时间,作串行口的波特发生器等功能的需要。它们具有两种工作模式(计数器模式和定时器模式)及4种工作方式(方式0,方式1,方式2,方式3)。其控制字均在相应的特殊功能寄存器中,通过对它的特殊功能寄存器的编制,可以方便的选择适当的工作模式和图2-4 LM339的结构图 10工作方式。 当定时器/计数器为定时工作方式时,计数器的加1信号由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计数满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。如果晶振为12MHz,则计数周期为: T=1/(12106)

22、Hz 1/12=1s 这是最短的定时周期。若要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如8位、13位、16位等)。 当定时器/计数器为计数工作方式时,通过引脚T0和T1对外部信号计数,外部脉冲的下降沿将触发计数。计数器在每个机器周期的S5P2期间采样引脚输入电平。若一个机器周期采样值为1,下一个机器周期采样值为0,则计数器加1。此后的机器周期S3P1期间,新的计数值装入计数器。所以检测一个由1至0的跳变需要两个机器周期,故外部事年的最高计数频率为振荡频率的1/24。例如,如果选用12MHz晶振,则最高计数频率为0.5MHz。虽然对外部输入信号的占空比无特殊要求,但为了确

23、保某给定电平在变化前至少被采样一次,外部计数脉冲的高电平与低电平保持时间均需在一个机器周期以上。 工作方式控制寄存器TMOD用于控制定时器/计数器的工作模式及工作方式,它的字节地址为89H。定时器/计数器的两个作用是用来精确的模拟一段时间间隔(作定时器用)或累计外部输入的脉冲个数(作计数器用)。当作定时器用时,在其输入端输入周期固定的脉冲个数,即可计算出所定时间的长度。当89c52内部的定时器/计数器被选定为定时器工作模式时,记数输入信号是内部时钟脉冲,每个机器周期产生一个脉冲使计数器增1,因此,定时器/计数器的输入脉冲和机器周期一样,为时钟频率的1/12。本设计采用的时钟周期为6MHz,记数

24、速度为500KHz,输入脉冲的时间间隔为0.5秒。10 2.2.2.2.5555.1 .1 .1 .1 单片机控制电路单片机控制电路单片机控制电路单片机控制电路 单片机控制电路由89c52单片机的P3.4和P3.5即T0和T1定时/计数器通过单片机的汇编语言来实现!定时时间为50分钟,其计时初值可计算如下: 50*60=3000s=30000*100ms 100ms用T0定时设置T0工作方式1,30000次用T2计数,设T2工作方式为11。 T0的定时初值为:216-100ms/2us=15536=C3B0H; T1的计数初值为65536-30000=35536=8AD0H 其中T0为定时器,

25、T1为计数器,定时器T0定时100ms后,计数器T1计数一次,此时, 11 定时器T0进行中断服务程序ZDT0进行定时器T0循环定时进入下一个定时周期,当满足又一次定时满100ms时,再由计数器T1计数一次,如此循环下去,直到满足计数器T1计数30000次,计数器T1进入中断服务程序ZDT1,其功能是使单片机的P3.0引脚发送一个脉冲触发定时报警发声电路,由定时报警发声电路发出报警信号,使学生意识到已经学习了45分钟了,需要休息一下,进而达到保护学生视力的目的。此时,学生应关闭视力保护器电源,休息后 在开启电源以进行节能。开启电源后,定时器T0和计数器T1进行到下一循环,对定时器进行赋值,T0

26、定时,T计数,再进行报警。 定时用的c语言程序见附录。 2.5.2蜂鸣器蜂鸣器蜂鸣器蜂鸣器报警发声电路报警发声电路报警发声电路报警发声电路 图2-5 蜂鸣器报警发声电路 如图2-5所示,三极管主要是做驱动用的。因为单片机的IO口驱动能力不够让蜂鸣器发出声音,所以我们通过三极管放大驱动电流,从而可以让蜂鸣器发出声音,利用单片机的定时功能通过P3.3产生一个振荡脉冲方波,输出高电平,三极管导通,集电极电流通过蜂鸣器让蜂鸣器发出声音,当输出低电平时,三极管截止,没有电流流过蜂鸣器,所以就不会发出声音。 3 3 3 3 开发系统软件设计开发系统软件设计开发系统软件设计开发系统软件设计 由于简单的程序可

27、以用汇编明显提高执行速度,但在大型程序开发时,需要考虑多方面因素,工程开发周期等需要合理选择编程语言,所以本文主要采用单片机c语言来完成软件设计和程序代码的编写,程序简单易懂,可执行性强。 3.1 系统软件设计系统软件设计系统软件设计系统软件设计 软件采用Keil Software,使用单片机汇编语言。因为汇编可以完成有些C语言完成不 12了的操作。程序中对时间要求苛刻的部分可以用内嵌汇编来重写,以促进速度上的显著提高。但是,开发和测试汇编代码是一件辛苦的工作,它将花费更长的时间,因而要慎重选择要用汇编的部分。一个合格的程序员应该是写出高质量标准化程序。 主程序的流程采用模块的方法设计,先规划

28、出各功能子模块,然后各个击破,这也是软件开发的方式,可以由简入难,比较符合人的思维习惯。 图3-2使定时器T0的中断程序流程图,图3-3使计数器T1终端服务流程图,其程序设计原理如下: 单片机控制电路由89c52单片机的P3.4和P3.5即T0和T1定时/计数器通过单片机的汇编语言来实现!定时时间为45分钟,其计时初值可计算如下: 50*60=3000s=30000*100ms 100ms用T0定时设置T0工作方式1,30000次用T2计数,设T2工作方式为11。 T0的定时初值为:216-100ms/2us=15536=C3B0H; T1的计数初值为65536-30000=35536=8AD

29、0H 其中T0为定时器,T1为计数器,定时器T0定时100ms后,计数器T1计数一次,此时,定时器T0进行中断服务程序ZDT0进行定时器T0循环定时进入下一个定时周期,当满足又一次定时满100ms时,再由计数器T1计数一次,如此循环下去,直到满足计数器T1计数30000次,计数器T1进入中断服务程序ZDT1,其功能是使单片机的P3.0引脚 发送一个脉冲触发定时报警发声电路,由定时报警发声电路发出报警信号,使学生意识到已经学习了45分钟了,需要休息一下,进而达到保护学生视力的目的。此时,学生应关闭视力保护器电源,休息后在开启电源以进行节能。开启电源后,定时器T0和计数器T1进行到下一循环,对定时

30、器进行赋值,T0定时,T计数,再进行报警。 13 图3-1 图 开始定时器初始化开中断,启动定时器检测P1.0是否为高电平等T0,T1中断请求P1.0是高?向P1.1发送2秒的高电平脉冲,进行报警否是 14 开始到000BH执行中断服务程序定时器T0初始化定时100ms到?T0赋初值,向T1的计数端P3.5发送脉冲开中断,启动定时器T0硬件定时等中断TF0是否图3-2 T0中断程序流程图 15 3.3.3.3.2222 主要程序介绍主要程序介绍主要程序介绍主要程序介绍 本设计采用c语言编写。c语言是一种计算机程序设计语言。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写

31、工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛。 各个主要程序段介绍如下: 1设计要求满足定时50分钟后报警,其初值计算如下: 开始到0013H执行中断服务程序定时器T1初始化计数30000次是否到?P3.3发出一个脉冲触发报警电路开中断,启动定时器T1硬件计数等中断TF1是否图3-3 T1中断程序流程图 1650min*60=3000s=30000*100ms 100ms用T0定时设置T0工作方式1,30000次用T2计数,设T2工作方式为11。 T0的定时初值为:216-100ms/2us=15536=C3B0H; T1的计数初值为65

32、536-30000=35536=8AD0H 2程序为: /*液晶lcd显示*/ #include<reg52.h> #define uchar unsigned char #define uint unsigned int sbit trig=P20; sbit echo=P32; sbit baojing=P33; sbit lcdrs=P12; sbit lcdrw=P11; sbit lcden=P10; bit succeed_flag; /测量成功标志 uchar tH,tL; long xx; void lcd_delay(uchar x); void trig_del

33、ay() uchar i; for(i=100;i>1;i-); void write_com(uchar com) /写命令函数 lcdrs=0; P0=com; lcd_delay(20); lcden=1; 17 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; /选择

34、状态为 写 write_com(0x0f); write_com(0x38); /显示模式设置,默认为0x38,不用变。 write_com(0x01); /显示清屏,将上次的内容清除,默认为0x01. write_com(0x0c); /显示功能设置0x0f为开显示,显示光标,光标闪烁;0x0c为开显示,不显光标,光标不闪 write_com(0x06); /设置光标状态默认0x06,为读一个字符光标加1. write_com(0x80); /设置初始化数据指针,是在读指令的操作里进行的 void display() /显示函数 uchar bai=0,shi=0,ge=0,xiao=0;

35、bai=xx/1000; shi=xx%1000/100; ge=xx%100/10; xiao=xx%10; write_com(0x80); write_date('l'); write_date('o'); write_date('n'); write_date('g'); write_date('='); write_date('0'+bai); write_date('0'+shi); write_date('0'+ge); write_date('.'); write_date('0'+xiao); 18 void lcd_delay(uchar x) uint i,j; for(i=x;i>0;i-) for(j=10;j>0;j-); void main() init_lcd(); trig=0; /首先拉低脉冲输入引脚 TMOD=0x01; /定时器0,定时器1,16位工作方式 IT0=0; /由高电平变低电平,触发外部中断 /ET1=1; /打开定时器1中断 EX0=0; /关闭外部中断 EA=1; /打开总中断0 while(1) /程序循环 uchar n

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

关于我们      便捷服务       自信AI       AI导航        获赠5币

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

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

gongan.png浙公网安备33021202000488号   

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

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服