基于单片机的视力保护器电路的设计Word格式文档下载.docx
《基于单片机的视力保护器电路的设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的视力保护器电路的设计Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。
theinternationalcompetitivenessof
thecountries.Singlechipmicrocomputerasanimportantbranchofmicrocomputer,withitssuperiorcontrolfunction,intheindustrialcontrol,intelligentinstrumentsystemisshowingitssuperiority.
Thispapermainlydescribesthepresentsituationofthedevelopmentofthesinglechipmicrocomputerandthedevelopmentofvisionprotector,usingsingle-chipmicrocomputerAT89C51designasuperiorperformancevisionprotector.OnthebasisoftypeAT89C51singlechipmicrocomputerhardwareimplementationranging,photographic,timing,alarm,fourbigfunctions.Therangingmoduleandphotosensitivemoduleismainlycomposedofthecorrespondingsensor,realizetheuserdistanceandambientlightintensitydetectionandalarmfunction.Timingmoduleismadeupofsinglechipmicrocomputertoruntheprogram,implementationoftheuserstudytimemonitoringandpromptfunctions.IntroducedthemethodofusingKeilplatformimplementationtimingassemblylanguage.Atthesametimealsosimplyintroducesthepresentsituationoftheapplicationofthetechnologyanddevelopmentprospects.
Keywords:
Singlechipmicrocomputer;
transducer;
timer;
keil
1.绪论..........................................................1
1.1选题背景............................................1
1.2视力保护器的现状及其展望............................2
1.3主要研究内容........................................2
2.系统硬件设计.............................................4
2.18051单片机简介......................................4
2.2传感器辅助坐直报警电路..............................7
2.38051单片机的中断系统.................................8
2.3.1中断的概念...................................8
2.3.2中断系统结构以及中断控制.....................9
2.3.3中断响应及中断处理过程......................12
2.4光线报警电路.......................................13
2.4.1光敏电阻控制电路..........................13
2.4.2光线发声报警电路..........................13
2.5定时报警电路.......................................14
2.5.1单片机控制电路............................14
2.5.2定时器报警发声电路........................15
3.开发系统软件设计.......................................16
3.1KeilC51软件简介....................................16
3.2程序的模块化划分....................................16
3.3程序模块............................................18
3.3.1超声波测距模块............................18
3.3.2外部中断模块..............................19
3.3.3定时模块..................................20
4.结论及展望.............................................22
参考文献.......................................................23
附录.........................................................24
第一章绪论
1.1选题背景
随着改革开放的发展,现如今社会对于广大社会人群要求其知识水平越来越高,特别是学生,故而现在是学生学习的高峰期,对他们的造成的学习压力也是特别繁重的。
根据有关的报告显示,我国现在的盲人人数以百万计,更甚的是低度近视的以千万计。
近视眼这种疾病在儿童及青少年时期极易发生,因其不注意保护自己视力,各种的坐姿和作业方式不正确。
根据近年全国学生体质健康调查报告结论如下所示。
更让人震惊的是,约有三十多万的人因高度近视而导致眼盲。
图1-1视力调查表
我国因人口基数众多也因对对视力保护不够重视,故而近视眼的人数据世界第一位,同时近视眼发病的概率也是全世界最高的。
学生因需经常用眼,故而在广大的近视眼人群中占据了巨大部分,有着相当多的人数。
中国广大学生的近视度数还是较为偏高的,而且人数呈现出逐年递增的趋势,且递增的比例相当大。
这种趋势使得社会人群普遍的关注和担忧。
他们作业阅读姿势不正确和作业阅读的时间过长是导致近视眼病的主要原因,因此设计一款人性化的视力保护器对于广大学生保护眼睛来说意义重大。
1.2视力保护器的现状及其展望
就目前的状况来说,国内外均业已有许多电子科技公司自己都在生产本公司的视力保护器。
就国内目前发展状况方面来说,比如说,有乌鲁木齐市旭之龙科技有限公司,该公司生产的“学生1.5视力保护器”也被称之为“坐视宝”,当使用者的坐姿不正确时,它能及时而有效的发出语音提醒。
也还有深圳市华恒电子有限公司的“MS-3032坐姿矫正器”,矫正作业和阅读时的不良坐姿。
然而,从总体状况来说,国内生产的视力保护器的功能不够丰富,甚至可以说是单一,但人们多视力保护器的多样化和个性化要求是日益增长的,故而相矛盾。
从国外方面来说,他们也十分地重视对视力保护的研究。
然而,他们更加倾向于对产生近视原因的思考和研究。
他们普遍认为可以通过合理的饮食营养搭配,例如多吃鱼和新鲜蔬菜,和正确的学习习惯,能降低近视发生的概率。
经市场的调研表明,真正功能丰富视力保护器在广大的销售市场上是不存在的。
现有的视力保护器只能实现多功能视力保护器的三大目标(定时、感光、测距)的某一个方面,功能不全面,不突出。
基于以上的因素,视力保护器存在着大量的市场需求,对于视力保护器的研究和开发才处于刚刚起步的阶段,还有着很大的发展空间。
在经过广大市场需求的刺激和国家大力支持此项研究的前提下,多视力保护器的发展将是十分巨大的,同时也即将为广大学子的视力问题作出很好的预防效果。
1.3主要研究内容
因单片机普遍地具有智能处理的功能,能满足人们基础的设计需求。
故而本次的设计以单片机芯片为核心,结合了理论指导和实验验证两方面的优点。
首先是各个电路模块和所需的元器件的选择,同时也需对电路模块的元器件的电阻值,电容量进行大致范围的估算。
进行了初步的范围的筛选后再进行进一步的精确的选择,最后确定使用。
接着对各个单元电路进行调整组合,使之形成完整的电路模式,且在计算机上进行调试和仿真。
单片机选择C51型,以光敏电阻来判定光照值是否达到国家标准来实现对光线强弱的警报,以水银滚珠型重力传感器来实现垂直电路从而达到对使用者坐姿的检验,以C51单片机的定时和汇编功能来实现对使用者使用时间的判定,以编程的方式来实现电路的自动复位。
本次设计的多功能视力保护器主要能实现以下几种功能:
(1)自动检测使用者的头部与书桌的距离,当使用者的头部与书桌的距离
过近即小于25cm时,报警闪光,提醒使用者调整坐姿。
(2)自动检测光线强度,当光线强度小于国家标准1001X,报警闪光,
提醒使用者调整光线强度。
(3)自动检测学习时间,当使用者使用的时间达到了本设计初始设定的45分钟,报警发生电路报警闪光,提醒使用者需要进行适当的休息,比如向远处眺望,来保护视力。
第二章系统硬件设计
本设计的硬件设计系统是以8051单片机为核心,同时由定时报警电路系统、光线报警电路系统、传感器辅助坐直报警电路系统、报警发声电路系统这四个局部的电路系统而共同组成了视力保护器的硬件设计部分。
设计基本框图如下所示:
图2-1系统设计基本框图
2.1AT89C51简介
89C51型单片机是一种八位单片机。
优点较多,例如:
体积小,功能较为完善,同时能面向控制,且开发应用十分方便,不论是在测控理论或者是应用方面,都是较为理想的,是一种不错的选择。
中央处理器、储存器、并串行口、定时器/计数器、中断系统构成了C51的主要组成部分。
数据总线、控制总线以及地址总线是C51单片机的三条总线,具有很好的完整性。
图2-289C581单片机内部结构
上图为89C51内部结构,由以下几个部分组成:
(1)1个8位中央处理器(CPU)。
运算器和控制器是CPU的核心,构成了其组成部分的主要器件。
同时其内部的运算器有个一个布尔处理器,能进行位数据操作。
同时面向控制的能力大幅的增强。
因此既能对字节数据进行处理,也能对位变量进行处理。
(2)程序存储器(片内ROM)。
其主要的功能是储存程序和表格以及常数等。
多见的是采用的是只读储存器,且类型多种多样。
(3)数据存储器(片内RAM)。
可以快速的储存数据、工作时的变量、中间结果。
简而言之就是数据暂存、缓冲、标志位等。
(4)并行输入/输出接口。
主要是由四个八位并行输入/输出口组成,主要功能是实现数据的并行输入和输出。
(5)串行输入/输出接口。
该接口是全双工串行口。
主要是用来实现单片机与其他的微机之间的串行通信,形成多台计算机互联系统。
(6)定时器/计数器。
是由两个定时器/计数器T0与T1组成。
可以实现精确的定时控制和外部事件的计数。
(7)中断系统。
主要是由5个中断源系统、2个可编程优先级的中断系统组成的,主要是用来各种实现中断申请。
(8)时钟电路。
该电路可以产生单片机工作时所需要的时钟脉冲序列。
89C51目前比较常见的主要有两种封装的方式。
PLCC封装形式,有44个引脚;
DIP封装形式,有40个引脚。
以下分别是PLCC和DIP封装形式:
图2-3两种常见的封装形式
为缩减体积,减少引脚数,很多的引脚采用复用方式,40个引脚大致分为以下四类:
1.电源
该引脚用来提供单片机工作时所需要的电源。
(1)Vcc:
正常运行时的电源,接+5V。
(2)Vss:
电源地线,接地端。
2.时钟
XTAL1和XTAL2是该时钟的两个时钟引脚,能与单片机片内的放大器构成一个振荡器,主要可以用来提供时钟控制信号。
3.控制引脚
(1)
/
:
ALE为地址锁存允许信号,同时与地址锁存器相互配合形成一个控制信号,输出一正脉冲。
是该控制引脚的第二功能,当由单片机编程写入时,为编程脉冲输入端。
(2)
该控制引脚在低电平时有效。
主要是作为外部程序存储器的选通信号,输入到数据总线上。
(3)RST/VPD:
该控制引脚在高电平时有效。
可以实现单片机的复位操作,仅需加上高电平信号,持续时间大于两个机器周期。
VDP是用作备用电源输入端,在掉电的情况下,自动引入一个电源,使得片内RAM数据不会丢失。
(4)
/VPP:
该控制引脚是程序存储器的选择控制端。
当引脚EA为高电平时,CPU执行的顺序是从片内到片外;
当引脚EA为低电平时,CPU只执行片外,无视片内。
4.I/O口引脚
89C51有四个并行I/O口,每个端口均为8位且均有8个引脚,因此共有32个引脚。
2.2传感器辅助坐直报警电路
以下是传感器的结构和工作原理:
当使用者的坐姿正确时,水银滚珠位于传感器的底端,与上面的电路处于分离状态,电路处于断路状态;
若使用者坐姿不正确时,水银滚珠慢慢向上滚动,则电路导通,喇叭发声提醒使用者调整坐姿。
传感器初始状态是竖直的,若使用者坐姿正确且保持不变。
传感器的电路时处于短路状态的,喇叭不发声,无提示音。
若使用者的坐姿有所变化,不正确,传感器的电路处于导通状态,喇叭发出提示音,提醒使用者调整坐姿,进而达到保护使用者视力的最终目的。
若Y0输出为高电平时,VT1导通时,VT1的集电极电压是非常低的,VT2处于关闭状态时,输出为高电平时,芯片集成TM-801的发出声音提示。
集成芯片TM-801的一种语言集成电路存储器是有多种语音信号的,本设计选择的是芯片MSS0283-53集成块口哨声,一旦触发,然后广播语音信号播出储存在在内存中语音信号,VT3放大,扬声器B组的声音。
2.38051单片机的中断系统
今天的计算机具有实时处理能力,能对外部发生的突发事件进行及时而有效处理。
这就是靠中断技术来实现该功能的。
2.3.1中断的概念
当CPU正在处理一个事件,一个事件从外部突发需要CPU及时的处理,CPU暂时中断当前的工作,转向事件的处理。
中断服务处理完事件后,然后返回到被中止,继续到原来的地方进行原来的工作,这个过程称为中断。
中断系统就是能实现中断功能的部件,中断源就是能产生中断的请求源。
中断请求就是中断源向CPU发出的处理请求。
中断响应就是CPU中断了自身的事件处理,转向去处理请求事件的过程。
中断服务就是对请求事件的整个的处理过程。
中断返回就是在请求事件处理完成后,再返回到原来中断的地方。
图2-5中断流程
2.3.2中断系统结构以及中断控制
图2-6中断系统结构
中断对于单片机而言是一项不可或缺的功能,特别是对于事件处理方面,能极大的提高单片机的的工作效率。
中断技术可以实现分时操作,实时处理,故障处理等功能。
1.89C51中断源
中断源一般有I/O设备、硬件故障、实时时钟、为调试程序而设置的中断源[8]。
89C51中断系统的5个中断源为:
(1)INT0:
外部中断0请求。
在输入低电平时才有效。
可以通过P3.2引脚引入。
(2)INT1:
外部中断1请求。
可以通过P3.3引脚引入。
(3)T0:
定时器计数器(0)溢出中断请求。
(4)T1:
定时器计数器
(1)溢出中断请求。
(5)TXD/RXD:
串行口中断请求。
当该串行端口,完成了发送数据或接受,就会要求中断。
每个中断源都与一个中断请求标志位相对应。
当中断源发出中断请求后,与之一一对应的标志位的锁存是通过TCON和SCON来实现的。
2.中断控制
89C51中断系统中有4个功能比较特殊的寄存器:
TCON(定时器控制寄存器)、SCON(串行口寄存器)、IE(中断允许寄存器)、IP(中断优先级寄存器)[8]
2.1两个特殊寄存器(TCON和SCON)的中断标志位
1.TCON中的中断标志位
8FH8EH8DH8CH8BH8AH89H88H
(1)TF1:
定时器计数器(T1)溢出中断请求标志。
当单片机开始工作后,T1开始计数,从初值开始加1一直到最高位产生溢出,TF1置一,且向CPU发出中断,响应以后,自动将TF1置0。
(2)TF0:
定时器计数器(T0)溢出中断请求标志。
作用与TF1相同。
(3)IE1:
中断请求标志位(外部中断1)。
当外部中断引脚上有中断请求时,IE1为1;
当CPU响应了中断请求后,IE1为0。
(4)IT1:
中断触发控制位(外部中断1)。
当IT1为0时,外部中断为电平触发。
若外部输入为低电平,IE1为1;
若外部输入为高电平,IE1为0。
当IT1为1时,外部中断为边沿触发。
若在两个机器周期内电平以高低的方式呈现,IE1为0;
当CPU响应了该中断,IE1为0。
(5)IE0:
外部中断0的中断标志位。
作用与IE1相同。
(6)IT0:
外部中断0的中断触发方式控制位。
作用与IT1相同。
2SCON中的中断标志位
99H98H
(1)TI:
串行口发送中断请求标志位。
CPU使得一个数据写入发送缓冲器SBUF时,就启动发送。
在每发送完一阵串行数据后,硬件置位TI。
但在CPU响应中断时,不清除TI,必须在中断服务程序中由软件使得TI清0。
(2)RI:
串行口接受中断请求标志位。
当串行口允许接受时,每接受完一个串行帧,硬件置位RI。
在CPU响应中断时不清除RI,必须实用软件对其清0。
在中断服务程序中有软件使得TI清0。
2.2中断允许控制位
AFHAEHADHACHABHAAHA9HA8H
(1)EA:
中断允许总控制位。
EA=0时,屏蔽所有中断请求;
EA=1时,CPU开放中断。
对个中断源的中断请求是否被允许,还需取决于个中断源的中断允许控制位的状态。
(2)ES:
串行口中断允许位。
当ES=0时,禁止串行口中断;
当ES=1时,允许串行口中断
(3)ET1:
定时器/计数器T1的溢出中断允许位。
当ET1=0时,禁止T1中断;
当ET1=1时,允许T1中断。
(4)EX1:
外部中断1中断允许位。
当EX1=0时,禁止外部中断1中断;
当EX1=1时,允许外部中断1中断。
(5)ET0:
定时器/计数器T0的溢出中断允许位。
当ET0=0时,禁止T0中断;
当ET0=1时,允许T0中断。
(6)EX0:
外部中断0中断允许位。
当EX0=0时,禁止外部中断0中断;
当EX0=1时,允许外部中断0中断。
2.3中断优先级控制
89C51有两个中断优先级。
每一个中断请求源都可以编程为高优先级中断或低优先级中断。
在中断系统中有两个不可寻址的“优先级生效”触发器,其中一个指出CPU是否正在执行高优先级的中断服务程序,另一个指出CPU是否正在执行低优先级中断服务程序。
当这两个触发器为1时,则分别屏蔽所有的中断请求。
89C51内有一个中断优先级寄存器IP。
IP中的低5位为个中断源优先级的控制位,可以使用软件来设定。
各位的含义如下所示:
BCHBBHBAHB9HB8H
(1)PS:
串行口中断优先级控制位。
(2)PT1:
定时器/计数器T1中断优先级控制位。
(3)PX1:
外部中断1中断优先级控制位。
(4)PT0:
定时器/计数器T0中断优先级控制位。
(5)PX0:
外部中断0中断优先级控制位。
2.3.3中断响应及中断处理过程
1.中断响应
1.中断响应条件
CPU响应中断条件有:
(1)有中断源发出中断请求。
(2)中断总允许位EA为1。
(3)申请中断的中断源的中断允许为1。
(4)无同级或更高级中断正在被响应。
(5)当前的指令周期已经结束。
2.中断响应的自主操作过程
89C51单片机CPU在每一个机器周期才分别采样每一个中断源,按照优先级顺序查询中断标志位。
若一些中断的中断允许位都在在允许状态(即为1),在接下来的某时间段内按其优先级进行中断处理。
这就表现为CPU的自主操作。
3.中断响应时间
CPU地不同情况下的中断请求的响应时间是不一样的,甚至也不是响应所有情况下的中断请求的。
同时在中断请求处理过程中若是受到了阻碍,中断请求的时间也是会有所延长的。
2.中断处理
中断处理就是从中断服务程序的第一条指令开始到返回指令结束。
其中包括:
保护现场、中断源服务。
中断服务子程序流程为:
关闭之后中断请求,保护现场,开启现在响应的中断,开始中断服务,关闭处理好的中断,恢复现场,开启中断请求允许位,中断返回。
[10]
3.中断返回
当一个中断源发出中断请求,CPU对该请求响应与否能自主决定。
若响应,就需要在某条指令完成后,需要把中断地址放入堆栈中保护起来,即为中断保护。
当中断处理完以后,再将之前仿佛堆栈中的指令的后面的指令地址返回PC中,这被称之为恢复断点,程序返回到之前中止的地方,继续原来的工作。
中断返回也表现为CPU的自主操作。
2.4光线报警电路
该电路是由光敏电阻控制电