已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河南科技大学毕业设计(论文)基于单片机的时钟显示器设计摘 要本文论述了如何利用单片机来设计一个时钟的方法。本设计基于单片机技术原理,以单片机芯片AT89C52作为核心控制器,通过硬件电路的制作以及软件程序的编制,设计制作出一个多功能数字时钟系统。单片机扩展的LCD显示器用来显示秒、分、时计数单元中的值。整个设计包括两大部分: 硬件部分和软件部分,以单片机为核心, 配以一定的外围电路和软件。硬件是整个系统的基础, 软件部分则要合理、充分地支持和使用系统的硬件, 从而完成系统所要完成的任务。本设计采用L ED 数码管的数字显示以其亮度高、显示直观等优点被广泛应用于智能仪器及家用电器等领域。该时钟系统主要由时钟模块、闹钟模块、环境温度检测模块、液晶显示模块、键盘控制模块以及信号提示模块组成。能够准确显示时间(显示格式为时时:分分:秒秒,24小时制),可随时进行时间调整,具有闹钟时间设置、闹钟开/关、止闹功能,能够对时钟所在的环境温度进行测量并显示。设计以硬件软件化为指导思想,充分发挥单片机功能,大部分功能通过软件编程来实现,电路简单明了,系统稳定性高。单片机在这种情况下诞生了基于单片机电子时钟。关键词:单片机、LCD显示器、液晶显示模块、基于单片机电子时钟。 Design According To Single Slice The Clock Display Of The MachineABSTRACTThis text discusses how to make use of a single slice machine to design the method of a clock.This design according to single slice machine technique principle, use single slice the machine chip AT89 C52 as core controller, pass the draw up of creation and software procedure of hardware electric circuit, design to create a multi-function and numerical clock system. the single slice machine expand of LCD display use to show second, cent, the chronometer value within few units.The whole design include two greatly part of: Hardware part and software part, with single slice machine for core, go together with with the certain outer circle electric circuit and the software.The hardware is the foundation of the whole system, the software is part of to then want reasonable, adequately support with usage system of hardware, complete system thus want to complete of mission.This design adoption L ED figures tube of the numeral show high with its bright degree, show to keep a view etc. the advantage be extensively been apply in realms, such as intelligence instrument and home .The clocks system is mainly shown that mold piece, the keyboard control mold piece and signal hint that the mold piece constitute by clock mold piece, alarm clock mold piece, the examination mold piece, LCD of the environment temperature.Can accurate manifestation time(manifestation format is always:The cent divide:Second second, 24 hours system), can carry on the adjustment in time at any time, have an alarm clock to establish for time, the alarm clock open/pass, make function, can carry on measure to the environment temperature of clock place and show.Design to change into instruction thought by hardware software, well exertive single slice machine function, greatly parts of functions pass a software plait a distance to carry out, electric circuit in brief clear, system stability Gao.The single slice machine was born in this kind of case the machine electronics is according to the single slice clock.KEY WORDS: single-chip,lcd display, the LCD shows a mold piece,a ccording to single slice machine electronics clock.11目录前言1第1章 硬件系统设计21.1 单片机21.2 硬件设计31.3 硬件模块31.3.1主控单元31.3.2显示部分51.3.3显示器接口及显示方式71.3.4键盘控制模块81.3.5声音提示模块81.3.6直流稳压电源部分91.3.7滤波电路91.4 硬件电路测试91.4.1硬件电路ERC测试91.4.2硬件电路网格化101.4.3生成PCB板11第2章 软件设计132.1 设计思路132.2 模块设计132.3 软件模块142.3.1计时模块142.3.2调时功能142.3.3主程序模块142.3.4键盘控制模块142.3.5在编程过程中要用到的其它程序模块14第3章 程序编译和系统调试及仿真153.1 程序编译153.1.1主要程序设计分析153.1.2程序设计163.2 软件调试233.2.1伟福简介233.2.2软件调试243.3 硬件调试25结论28谢 辞29参考文献30外文资料翻译31前言数字钟是采用数字电路实现对时,分,秒数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。近年来随着以计算机为轴心的各种各样信息处理装置的诞生,为适应这种新形势,信息家电,网络终端,广播-通信等用途的LCD市场也将迅速扩大,而且如今LCD发展方向不仅在于大屏幕,而且在中小屏幕方面,例如汽车导航系统,摄像机,数字式照相机,便携式电视,PDA(个人数字助理),娱乐/游戏机,摄影机等有着进一步的发展。液晶显示器(LCD)具有功耗低、体积小、重量轻、超薄等许多其他显示器无法比拟的优点,近年来被广泛用于单片机控制的智能仪器、仪表和低功耗电子产品中。LCD可分为段式LCD、字符式LCD和点阵式LCD。其中,段式LCD和字符式LCD只能用于字符和数字的简单显示,不能满足图形曲线和汉字显示的要求;而点阵式LCD不仅可以显示字符、数字,还可以显示各种图形、曲线以及汉字、动画,并且可以实现屏幕滚动、反转、闪烁等功能,用途十分广泛。由此可见LCD的应用是如此广泛,所以用MPU控制液晶显示器是很普遍的应用。 第1章 硬件系统设计1.1 单片机单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力(如算术运算,逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路(I/O口),可能还包括定时计数器,串行通信口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换器及A/D转换器等电路集成到一块单块芯片上,构成一个最小然而完善的计算机系统。这些电路能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务1。单片机芯片的集成度很高,它将微型计算机的主要部件都集成在一块芯片上,具有以下特点:(1)体积小、重量轻、价格便宜、耗电少;(2) 根据工控环境要求设计,且许多功能部件集成在芯片内部,其信号通道受外界影响小,故可靠性高,抗干扰性能优于采用一般的CPU;(3) 控制功能强,运行速度快。其结构组成与指令系统都着重满足工控要求。有丰富的条件分支转移指令和很强的位处理功能及I/O口逻辑操作功能;(4)片内存储器的容量不可能很大;引脚也嫌少,I/O引脚常不够用,且兼第二功能以至第三功能。但存储器和I/O接口都易于扩展;自单片机出现至今,单片机技术已走过了30多年的发展路程。纵观30年来单片机发展里程可以看出,单片机技术的发展以微处理器(MPU)技术及超大规模集成电路技术的发展为先导,以广泛的应用领域拉动,表现出较微处理器更具个性的发展趋势。单片机应用最多的领域主要有以下:因它具有“小、轻、廉、省”的特点,所以特别适用于“电脑型产品”,在家用电器、玩具、游戏机、声像设备、电子秤、收银机、办公设备、厨房设备、家庭安防设备等许多产品上得到应用。适用于仪器、仪表,不仅能完成测量,还具有处理、监控等功能,易于实现数字化和智能化。1.2 硬件设计硬件设计框图声音提示键盘控制模液晶显示器AT89C52主控单元图1-1硬件设计框图由框图的设计结构可以分块设计电路。1.3 硬件模块1.3.1主控单元AT89C52是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的只读程序存储器(PEROM)和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C52单片机适合于许多较为复杂控制应用场合。下表是89c52的主要性能参数表1-1 89c52的主要性能参数主要性能参数:与MCS51产品指令和引脚完全兼容8k字节可重擦写Flash闪速存储器1000次擦写周期全静态操作:0Hz24MHz三级加密程序存储器2568字节内部RAM32个可编程I/O口线3个16位定时/计数器8个中断源可编程串行UART通道低功耗空闲和掉电模式AT89C52提供以下标准功能:8k字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路2。同时,AT89C52可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。下表是89c52的极限参数表1-2 AT89C52的极限参数工作温度-55to+125储藏温度-65to+150任一引脚对地电压-1.0Vto+7.0V最高工作电压6.6V直流输出电流15.0mA1.3.2显示部分单片机应用系统中使用的显示器主要有发光二极管显示器,简称LED(Light Emitting Diode);液晶显示器LCD(Liquid Crystal Display);近几年也有配置CRT显示器的。液晶显示器简称是利用液晶经过处理后能够改变光线传输方向的特性,达到显示字符或者图形的目的。其特点是体积小、重量轻、功耗极低、显示内容丰富等特点,在单片机应用系统中有着日益广泛的应用。1602芯片:主要用于显示时间和定时时间。1602芯片由点阵字符液晶显示器件和专用的行、列驱动器、控制及必要的链接件、结构件组装而成,可以显示数字和西文字符,但不能显示图形,已经可以满足本次设计的需要。1602型LCD显示模块具有体积小,功耗低,显示内容丰富等特点3。1602型LCD可以显示2行16个字符,有8位数据总线D0D7和RS,R/W,EN三个控制端口,工作电压为5V,并且具有字符对比度调节和背光功能。1. 外型尺寸:80X36X13(LXWXH)2.接口信号说明表1-3 1602型LCD的接口信号说明编号符号引脚说明编号符号引脚说明1VSS电源地9D2Data I/O2VDD电源正极10D3Data I/O3VL液晶显示偏压信号11D4Data I/O4RS数据/命令选择端(H/L)12D5Data I/O5R/W读写选择端(H/L)13D6Data I/O6E使能信号14D7Data I/O7D0Data I/O15BLA背光源正极8D1Data I/O16BLK背光源负极3.主要技术参数表1-4 1602型LCD的主要技术参数显示容量16X2个字符芯片工作电压4.55.5V工作电流2.0mA(5.0V)模块最佳工作电压5.0V字符尺寸2.95X4.35(WXH)mm4基本操作程序读状态:输入:RS=L,RW=H,E=H输出:D0D7=状态字读数据:输入:RS=H,RW=H,E=H输出:无写指令:输入:RS=L,RW=L,D0D7=指令码,E=高脉冲 输出:D0D7=数据写数据:输入:RS=H,RW=L,D0D7=数据,E=高脉冲 输出:无5RAM地址映射图控制器内部带有80字节的RAM缓冲区,对应关系1-5表所示表1-5对应关系LCD16字X2行000102030405060708090A0B0C0D0E0F10。27404142434445464748494A4B4C4D4E4F50。676.状态字说明表1-6状态字说明STA7STA6STA5STA4STA3STA2STA1STA0D7D6D5D4D3D2D1D0STA0STA6当前地址指针的数值STA7读写操作使能1:禁止;0:允许注意 每次对控制器进行读写操作之前,都必须进行读写检测,确保STA7为0。7数据指针设置控制器内部设有一个数据地址指针,用户可以通过它们访问内部的全部80字的RAM。8其它设置表1-7 其他设置指令码功能01H显示清屏:1.数据指针清02.所有显示清002H显示回车:数据指针清0表1-8 指令码及功能指令码功能00001DCBD=1开显示;D=0关显示C=1显示光标;C=0不显示光标B=1光标闪烁;B=0光标不显示1.3.3显示器接口及显示方式笔段式LCD显示器:类似于LED数码管显示器。每个显示器的段电极包括a, b, c, d, e, f, g七个笔划(段)和一个背电极BP(或COM)。可以显示数字和简单的字符。点阵式LCD显示器:段电极与背电极呈正交带状分布,液晶位于正交的带状电极间。点阵式LCD的控制一般采用行扫描方式4。1.3.4键盘控制模块按键按照结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关等;另一类是无触点式开关按键,如电气式按键,磁感应按键等。前者造价低,后者寿命长。目前,微机系统中最常见的是触点式开关按键。 按键按照接口原理可分为编码键盘与非编码键盘两类,这两类键盘的主要区别是识别键符及给出相应键码的方法。编码键盘主要是用硬件来实现对键的识别,非编码键盘主要是由软件来实现键盘的定义与识别。全编码键盘能够由硬件逻辑自动提供与键对应的编码,此外,一般还具有去抖动和多键、窜键保护电路。这种键盘使用方便,但需要较多的硬件,价格较贵,一般的单片机应用系统较少采用。非编码键盘只简单地提供行和列的矩阵,其它工作均由软件完成。由于其经济实用,较多地应用于单片机系统中。在本套设计中由于只需要几个功能键,此时,可采用独立式按键结构5。按键的软件结构:按键中有一个复位键及定时键、调时键加一键和减一键,一个按键接在复位电路上,另外四个按键接在P0P4口,低电平表示有按钮按下;按钮没有接防抖电路,需要设计软件防抖。1、定时。按下定时键后可以开始定时,过程如下:定时-小时加/减-按定时-分钟加/减-按定时。2、调时。按下调时键后可以调时,过程如下:调时-年加/减-调时-月加/减-调时-日加/减-调时-时加/减-调时-分加/减-调时-秒加/减 -调时。1.3.5声音提示模块蜂鸣器:89C52的P2.0口接了一个蜂鸣器,定时时间到, P1.0输出一定频率脉冲时,蜂鸣器将发出响声;一分钟后停止。1.3.6直流稳压电源部分直流稳压电源是给电子设备提供稳定直流电压的电子电路。这次电路需要的是+5V直流电源。1.3.7滤波电路它的任务是将全滤波形的输出通过RC滤波网络以后变成更平坦的直流电压,减小脉动,提高整流的效果6。这是整流管中通过的电流的瞬间值要比平均值大得多,特别在接通电源瞬间有相当大的冲击电流(即充电电流)通过整流管,这一点要引起注意。(1) 电源变压器它的任务是把电源电压220V变压到合适的大小。如果U2的值太大,会造成集成端稳压器7805的功耗大,温升高,且浪费电能。反之,如果U2的值小到一定程度,三端稳压器不能正常工作,失去稳压作用.因此U2的值应大小合适,这个值应该使三端稳压器在交流电网电压最低和输出电流最大时能正常工作。而且在正常稳压的前提下,它的压降尽可能小,以减小功耗。(2) 整流电路它的任务是将正弦波变换成直流电压。这里一般采用桥式整流电路来实现,既可用四个二极管来组成,也可用整流桥堆来完成,只是参数一定要选择合理。(3) 稳压电路要求输出恒定的直流电压,且要达到设计中所提出的要求。1.4 硬件电路测试1.4.1硬件电路ERC测试如图1-2所示,选择ERC做电路测试。如果通过测试,则出现1-3所示界面。图1-2 ERC测试图1-3 通过测试1.4.2硬件电路网格化硬件电路网络化如图1-4所示,选择CREATE NETLIST,即可产生图1-5所示界面。图1-4硬件电路网格化图图1-5硬件电路网格化图1.4.3生成PCB板PCB板的生成过程比较复杂。首先要新建一个WIZARD文件,按提示选择,之中要选择双层板并通过空连接。之后即可产生一个PCB文件,在对话框中选择LOADNET,再对网格化后的文件进行编译。如果无错即可出现如图1-6所示的对话框。图1-6选择精确显示在图1-6的对话框中选择精确显示。即可弹出PCB板概图的界面。把各个元件按照合理的布局拉开,在点击AUTOROUTE-ALL-ROUTEALL,既可生成PCB板。第2章 软件设计2.1 设计思路本系统是以单片机的基本语言汇编语言来进行软件设计,指令的执行速度快,节省存储空间。为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了。对于一个微控制系统来说,硬件是基础,软件是灵魂。软件在很大程度上决定了系统的先进性、可靠性、实用性以及实时性。本次设计所涉及到的软件设计主要是系统编程和其他应用软件和调试软件的使用,其中重中之重是用汇编语言来进行程序编制,编制的程序要求可靠性高、实时性强、简练易于维护等等。程序设计的具体步骤如下:(1)提出各种可供选择的方案;(2)对各个方案进行论证,选取合理的方案,画出系统流程图;(3)在综合分析对比各种合理方案的基础之上选择一个最佳方案;(4)功能分解。通常分为结构设计和过程设计两个阶段。结构设计确定程序由哪些模块组成,以及这些模块之间的关系;过程设计确定每个模块的设计程序结构,将各个模块组织成良好的层次系统;(5)审查与仿真调试:对总体设计的程序进行严格的审查,在审查之后使用仿真设备(本设计采用的是南京伟福H51/S仿真器)进行程序仿真和调试。2.2 模块设计本次设计实现的功能主要有计时、计日期、计星期、实现闹钟、时间日期星期和闹钟的调整以及键盘扫描、显示扫描。为了方便实现、调试以及贯彻模块化设计的思想,将整个程序分成了若干个模块,每个模块又由若干个子程序组成,下面分别就各模块详细描述。2.3 软件模块2.3.1计时模块该模块完成秒、分、时、日、星期、月、年的计算更新、有效性检查。通过定时器0工作于16位重装载方式准确地定时50毫秒,再由软件计数20次以完成定时1秒。秒、分、时、日、星期、月的加1、调整程序分别编成子程序,若有进位,则本位从新计数,并调用下一级子程序。2.3.2调时功能当由于时钟误差或意外断电后可以用调时功能较时。2.3.3主程序模块主程序模块主要由计时、调时、按键选择等模块组成,下面将做详细描述,再次从略。2.3.4键盘控制模块由于在硬件设计中只用到四个键,所以,这是一个相对简单的流程,但在实际编程中会因为硬件过于简单,而使程序很复杂。2.3.5在编程过程中要用到的其它程序模块1)LCD初始化 2)判断闰年 3)时间的加减 这些程序在本设计都比较重要,也很复杂,但都有经典程序可以参考,不做赘述。27第3章 程序编译和系统调试及仿真3.1 程序编译3.1.1主要程序设计分析(1)主程序 设计中采用定时器T0中断完成,其余状态循环调用显示子程序,当P3.7端口或者P1.7端口开关按下时,转入调整时间或者调整日期功能程序。(2)显示子程序数码管显示的数据存放在内存单元70H-75H中,其中70H71H存放秒数据,72H73H存放分数据,74H75H存放时数据,每一地址单元内均为十进制BCD码。由于采用软件动态扫描实现数据显示功能,显示用十进制BCD码数据的对应段码存放在ROM表中。显示时,先取出70H75H某一地址中的数据,然后查的对应的显示段码从P1口输出。P3口将对应的数码管选中,就是显示该地址单元的数据值。(3)定时器T0中断服务程序定时器T0用于时间计时。定时溢出中断周期设为50ms,中断累计20次(即1s)时对秒计数单元进行加1操作。时间计数单元地址分别在70H71H(s)、76H77H(min)、78H79H(h),7AH单元存放“熄灭符”数据(#0AH)。在计数单元中采用十进制BCD码计数,满60进位。T0中断服务程序流程图3所示。(4)T1中断服务程序T1中断服务程序应用于指示调整单元数字的亮闪。在时间调整状态下,每过0.3秒,将对应单元的显示数据换成熄灭符数据(#0AH)。这样,在调整时间时,对应调整单元的显示数据就会间隔闪亮。(5)调时功能程序调时功能程序的设计方法是:按下按键,若按下时间小于1秒,进入省电状态(数码管不亮,时钟不停),否则进入调分状态,等待操作,此时计时器停止走动。当再次按下按钮时,若按下的时间小于0.5秒,则时间加1分钟;若按下时间大于0.5秒,则进入小时调整状态。在小时调整状态下,当按键按下的时间大于0.5秒时退出调整状态,时钟继续走动。3.1.2程序设计定时器T0、T1溢出周期为50MS,T0为秒计数用,T1为调整时闪烁用,P3.7为调整按钮,P1口为字符输出口,采用共阳显示管。中断入口程序ORG 0000H 程序执行开始地址LJMP START 跳到标号START执行ORG 0003H 外中断0中断程序入口RETI 外中断0中断返回ORG 000BH 定时器T0中断程序入口LJMP INTT0 跳至INTTO执行ORG 0013H 外中断1中断程序入口RETI 外中断1中断返回ORG 001BH 定时器T1中断程序入口ORG 0023H 串行中断程序入口地址RETI 串行中断程序返回主 程 序START: MOV R0,#70H 清70H-7AH共11个内存单元 MOV R7,#0BH CLEARDISP: MOV R0,#00H INC R0 DJNZ R7,CLEARDISP MOV 20H,#00H 清20H(标志用) MOV 7AH,#0AH 放入熄灭符数据 MOV TMOD,#11H 设T0、T1为16位定时器 MOV TL0,#00H 50MS定时初值(T0计时用) MOV TH0,#4CH 50MS定时初值 MOV TL1,#00H 50MS定时初值 MOV TH1,#4CH 50MS定时初值 SETB EA 总中断开放 SETB ET0 允许T0中断 SETB TR0 开启T0定时器 MOV R4,#14H 1秒定时用初值 START1: LCALL DISPLAY 调用显示子程序 JNB P3.7,SETMM1 P3.7口为0时转时间调整程序 SJMP START1 P3.7口为1时跳回START1 SETMM1:LJMP SETMM 转到时间调整程序SETMM1秒计时程序T0中断服务程序 INTT0: PUSH ACC 累加器入栈保护 PUSH PSW 状态字入栈保护 CLR ET0 关T0中断允许 CLR TR0 关闭定时器T0 MOV A,#0B7H 中断响应时间同步修正 ADD A,TL0 低8位初值修正 MOV TL0,A 重装初值(低8位修正值) MOV A,#4CH 高8位初值修正 ADDC A,TH0 MOV TH0,A 重装初值(高8位修正值) SETB TR0 开启定时器T0 DJNZ R4, OUTT0 20次中断未到中断退出 ADDSS: MOV R4,#14H 20次中断到(1秒)重赋初值 MOV R0,#71H 指向秒计时单元(71H-72H) ACALL ADD1 调用加1程序(加1秒操作) MOV A,R3 秒数据放入A CLR C 清进位标志 CJNE A,#60H,ADDMM ADDMM: JC OUTT0 小于60秒时中断退出 ACALL CLR0 大于或等于60秒时对秒计时单元清0 MOV R0,#77H 指向分计时单元(76H-77H) ACALL ADD1 分计时单元加1分钟 MOV A,R3 分数据放入A CLR C 清进位标志 CJNE A,#60H,ADDHH ADDHH: JC OUTT0 小于60分时中断退出 ACALL CLR0 大于或等于60分时分计时单元清0 MOV R0,#79H 指向小时计时单元(78H-79H) ACALL ADD1 小时计时单元加1小时 MOV A,R3 时数据放入A CLR C 清进位标志 CJNE A,#24H,HOUR HOUR: JC OUTT0 小于24小时中断退出 ACALL CLR0 大于或等于24小时小时计时单元清0 OUTT0: MOV 72H,76H 中断退出时将分、时计时单元数据移 MOV 73H,77H 入对应显示单元 MOV 74H,78H MOV 75H,79H POP PSW 恢复状态字(出栈) POP ACC 恢复累加器 SETB ET0 开放T0中断 RETI 中断返回闪动调时程序T1中断服务程序,用作时间调整时调整单元闪烁指示INTT1: PUSH ACC 中断现场保护 PUSH PSW MOV TL1, #00H 装定时器T1定时初值 MOV TH1, #4CH DJNZ R2,INTT1OUT 0.3秒未到退出中断 MOV R2,#06H 重装0.3秒定时用初值 CPL 02H 0.3秒定时到对闪烁标志取反 JB 02H,FLASH1 02H位为1时显示单元熄灭 MOV 72H,76H 02H位为0时正常显示 MOV 73H,77H MOV 74H,78H MOV 75H,79H INTT1OUT: POP PSW 恢复现场 POP ACC RETI 中断退出FLASH1: JB 01H,FLASH2 01H位为1时,转小时熄灭控制 MOV 72H,7AH 01H位为0时,熄灭符数据放入分 MOV 73H,7AH 显示单元,将不显示分数据 MOV 74H,78H MOV 75H,79H AJMP INTT1OUT 转中断退出FLASH2: MOV 72H,76H 01H位为1时,熄灭符数据放入小时 MOV 73H,77H 显示单元,小时数据将不显示 MOV 74H,7AH MOV 75H,7AH AJMP INTT1OUT 转中断退出加1子 程 序 ADD1: MOV A,R0 取当前计时单元数据到A SWAP A A中数据高四位与低四位交换 ORL A,R0 前一地址中数据放入A中低四位 ADD A,#01H A加1操作 DA A 十进制调整 MOV R3,A 移入R3寄存器 ANL A,#0FH 高四位变0 MOV R0,A 放回前一地址单元 MOV A,R3 取回R3中暂存数据 INC R0 指向当前地址单元 SWAP A A中数据高四位与低四位交换 ANL A,#0FH 高四位变0 MOV R0,A 数据放入当削地址单元中 RET 子程序返回清零程序对计时单元复零用 CLR0: CLR A 清累加器 MOV R0,A 清当前地址单元 DEC R0 指向前一地址 MOV R0,A 前一地址单元清0 RET 子程序返回时钟调整程序当调时按键按下时进入此程序 SETMM: cLR ET0 关定时器T0中断 CLR TR0 关闭定时器T0 LCALL DL1S 调用1秒延时程序 JB P3.7,CLOSEDIS 键按下时间小于1秒,关闭显示 MOV R2,#06H 进入调时状态,赋闪烁定时初值 SETB ET1 允许T1中断 SETB TR1 开启定时器T1 SET2: JNB P3.7,SET1 P3.7口为0(键未释放),等待 SETB 00H 键释放,分调整闪烁标志置1 SET4: JB P3.7,SET3 等待键按下 LCALL DL05S 有键按下,延时0.5秒 JNB P3.7,SETHH 按下时间大于0.5秒转调小时状态 MOV R0,#77H 按下时间小于0.5秒加1分钟操作 LCALL ADD1 调用加1子程序 MOV A,R3 取调整单元数据 CLR C 清进位标志 CJNE A,#60H,HHH 调整单元数据与60比较 HHH: JC SET4 调整单元数据小于60转SET4循环 LCALL CLR0 调整单元数据大于或等于60时清0 CLR C 清进位标志 AJMP SET4 跳转到SET4循环 CLOSEDIS: SETB ET0 省电状态。开T0中断 SETB TR0 开启T0定时器(开时钟)CLOSE: JB P3.7,CLOSE 无按键按下,等待。 LCALL DISPLAY 有键按下,调显示子程序延时削抖 JB P3.7,CLOSE 是干扰返回CLOSE等待 WAITH: JNB P3.7,WAITH 等待键释放 LJMP START1 返回主程序(LED数据显示亮) SETHH: CLR 00H 分闪烁标志清除(进入调小时状态) SETHH1: JNB P3.7,SET5 等待键释放 SETB 01H 小时调整标志置1 SET6: JB P3.7,SET7 等待按键按下 LCALL DL05S 有键按下延时0.5秒 JNB P3.7,SETOUT 按下时间大于0.5秒退出时间调整 MOV R0,#79H 按下时间小于0.5秒加1小时操作 LCALL ADD1 调加1子程序 MOV A,R3 CLR C CJNE A,#24H,HOUU 计时单元数据与24比较 HOUU: JC SET6 小于24转SET6循环 LCALL CL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 纸娃娃课件教学课件
- 2024年古建筑亮化保护工程协议
- 2024年地摊经济创业项目经营权转让协议
- 2024个人助学贷款合作合同
- 2024年度4S店汽车销售与金融投资合同
- 2024丙公司与丁公司就煤炭废料处理服务的合同
- 2024年度腻子产品生产线改造合同
- 2024年己方区块链技术研究与应用合作协议
- 2024年度建筑工程安全防护合同
- 2024年度新能源汽车推广销售合同
- 有机合成化学(山东联盟)知到章节答案智慧树2023年青岛科技大学
- 商标法题库1(答案)
- TMF自智网络白皮书4.0
- 电视剧《国家孩子》观影分享会PPT三千孤儿入内蒙一段流淌着民族大爱的共和国往事PPT课件(带内容)
- 所水力除焦设备介绍
- 改革开放英语介绍-课件
- pet考试历届真题和答案
- 《企业员工薪酬激励问题研究10000字(论文)》
- 大学英语三级B真题2023年06月
- GB/T 7909-2017造纸木片
- GB/T 25217.6-2019冲击地压测定、监测与防治方法第6部分:钻屑监测方法
评论
0/150
提交评论