微控制器原理与接口技术课程设计报告-单片机课多功能数字电子钟设计.doc_第1页
微控制器原理与接口技术课程设计报告-单片机课多功能数字电子钟设计.doc_第2页
微控制器原理与接口技术课程设计报告-单片机课多功能数字电子钟设计.doc_第3页
微控制器原理与接口技术课程设计报告-单片机课多功能数字电子钟设计.doc_第4页
微控制器原理与接口技术课程设计报告-单片机课多功能数字电子钟设计.doc_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

辽东学院信息技术学院微控制器原理与接口技术课程设计报告设计题目:_专业班级:_姓 名:_教师评语:成绩 评阅教师 张俊芳 日期 一、摘要该课程设计为数字电子钟的设计。以AT89S52为核心,配合液晶显示器和按键为用户提供长期、连续、可靠、稳定的工作环境。该数字电子钟有时分秒显示和日期显示以及时间和日期调整的功能。系统软件设计包括单片机计算机两部分的编程。计算机软件编程主要实现参数设置、串行口数据接收、指令发送以及数据的显示和存储。单片机软件编程主要实现键盘、液晶显示器等各模块的功能,采用汇编语言编程。关键词: 数字电子钟单片机液晶显示 二、课程设计目的通过单片机原理与应用课程设计,使学生掌握单片机及其扩展系统设计的方法和设计原则及相应的硬件调试的方法。进一步加深单片机及其扩展系统设计和应用的理解。三、课程设计题目多功能数字电子钟设计四、课程设计内容及要求1、设计内容:1)有上电指示灯;2)能正确手动复位;3)有4位数码管显示,能按照分秒进制显示时间;4)自定义的扩展功能。2、设计要求:1)独立设计原理图及相应的硬件电路。2)针对选择的设计题目,设计系统软件。软件要做到:操作方便,实用性强,稳定可靠。3)设计说明书格式规范,层次合理,重点突出。并附上设计原理图及相应的源程序。五、系统硬件电路设计单片机的接口信号是数字信号。要想用单片机获取时间这类非电信号的信息,必须使用时间芯片,将时间信息转换为电流或电压输出。如果转换后的电流或电压输出是模拟信号,还必须进行A/D转换,以满足单片机接口的需要。如果是数字信号就可以直接送往单片机进行数据处理。在传统的基于单片机的数字时钟设计的基础上经过一些改进,引入12887时间芯片,将电路的控制部分和计时部分分开,电路的控制部分为单片机,计时部分为12887时间芯片。12887芯片是独立计时,并且具有掉电保护功能,内部自带锂电池,能够在断电的情况下继续计时,主电路恢复供电之后能够不必调整时间,为时钟的日常操作省去了很大的麻烦,而且这种设计更节能,在需要观察时间的时候比如白天就可以给主电路通电。而在夜晚不需要观察时钟的时候就可以给主电路断电,这样可以节约大量能量。时间芯片12887采用了内部集成晶振的电路,并且具有内部温漂补偿电路设计。能够准确计时,提供精确的时间,这样就简化了电路的器件选择,另外也使程序的设计更加简洁。在硬件设计方面,由于只增加了一个12887时间芯片,因此并不是特别复杂,而且这种独立计时的设计使得产品排故更加方便。采用LCD液晶显示器显示。而LCD液晶显示则耗能少,能够显示年、月、日、星期等汉字,在显示方面更加灵活,而且改变显示时只要改变软件设计就可以,不用改变硬件电路的设计,易于电路的功能扩展。电路的软件设计也很简单。另外,这种设计硬件更加简洁。采用LCD液晶显示方案的缺点是在显示位数比较少时,价格略显昂贵。综上所述,本设计采用独立计时, 主控芯片使用51系列STC89C52单片机,时钟芯片使用美国DALLAS公司推出的一种高性能、低功耗、带RAM和内置电池的实时时钟DS12887。采用DS12887作为主要计时芯片,可以做到计时准确。更重要的是,DS12887可以在外部电源断电的情况下继续计时,在没有外部供电的情况下,DS12887可以连续计时10年以上。系统由主控制器STC89C52、时钟芯片DS12887、LCD液晶显示电路、键盘扫描电路和通信系统模块电路组成。系统硬件设计框图如图2-1所示。图2-1 系统硬件设计框图1、单片机最小系统电路设计STC89C52 是低电压,高性能 CMOS 8 位单片机,片内含 8k bytes 的可反复擦写的Flash只读程序存储器和256 bytes 的随机存取数据存储器(RAM),器件采用高密度、非易失性存储技术生产,与标准 MCS-51 指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和 Flash 存储单元,功能强大 STC89C52 单片机适合于许多较为复杂控制应用场合。STC89C52单片机为40引脚双列直插芯片,有四个I/O口P0、P1、P2、P3,每一条I/O线都能独立地作输出或输入。STC89C52 PDIP管脚封装,如图2-2所示。图2-2 STC89C52 PDIP管脚封装STC89c52包含以下部分,其结构图如图2-3所示图2-3STC89c52内部结构图(1)一个8位微处理器CPU(2)片内数据存储器RAM和特殊功能寄存器SFR(3)片内程序存储器ROM(4)两个定时/计数器T0、T1,可用作定时器,也可用以对外部脉冲进行计 数(5)四个8位可编程的并行I/O端口,每个端口既可作输入,也可作输出(6)一个串行端口,用于数据的串行通信(7)中断控制系统(8)内部时钟电路功能特性概述:STC89C52 提供以下标准功能:8k字节 Flash 闪速存储器,256字节内部 RAM,32 个 I/O 口线,3 个 16 位定时/计数器,一个 6 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,STC89C52 可降至 0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止 CPU 的工作,但允许 RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存 RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。单片机STC89C52的P0口作为输入口。P0与DS12887的AD相连,进行时间图2-3数据的采集;P3.7(RD)与DS12887的17脚DS相连,P3.3与DS12887的19脚IRQ相连,P2.7与DS12887的13脚CS相连;30脚ALE与DS12887的14脚AS相连。单片机的第18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,XTAL2接外部晶振和微调电容的另一端。对外接电容的值虽然没图2-4 主控电路及其最小系统电路图有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为11.0592MHz,电容应尽可能的选择陶瓷电容,电容值约为22F。第9引脚为复位输入端,接上电容,电阻后构成上电复位电路。20引脚为接地端,40引脚为电源端。/EA端(31引脚)接+5V电压。由此就构成了单片机主控模块的最小系统,如图2-4所示。2、DS12887时钟芯片电路设计DS12887是美国DALLAS公司生产的时钟日历芯片,具有24个引脚。DS12887和MC146818B及DS1287管脚兼容。内部自带锂电池,在没有外部电源的情况下可工作十年。它有内部集成晶振。可计算到2100年前的时、分、秒、星期、日、月、年七种日历信息,并带闰年补偿。用2进制或BCD码代表日历或闹钟信息。可选用夏令时模式。可以选用MOTOROLA和INTEL两种总线模式。它采用数据地址总线复用模式。内键128字节RAM,这128字节RAM中前14字节是时钟控制寄存器。其余为通用RAM。它可以输出可编程方波。它可以产生3种可编程中断;一,时间中断,可产生每秒一次直到每天一次中断;二,周期性中断,可产生122ms到500ms周期性中断;三,时间更新结束中断。DS12887有24个引脚,其引脚如图2-5所示。图2-5DS12887引脚图MOT是总线类型选择管脚,当此脚接在VCC上时选择MOTOROLA总线方式,如果此脚接在电源地上或者不接时选择的是INTEL总线模式。AD0-AD7是数据复用总线。GND是电源地。CS是片选信号。AS是ALE信号管教。R/W在INTEL总线模式下是WR。DS在INTEL总线模式下是RD,当它有效时表示DS12887正在往总线输出数据。RD信号在贮存器芯片上被称为OE信号线。RESET是复位信号,复位信号对日历、时间、RAM无效,系统上电时,复位信号要保持200ms以上DS12887芯片才能正常工作。当复位引脚电平为低并且VCC高于4.5V时,以下情况发生。周期中断允许位清零,闹钟中断允许位清零,更新完成中断标志位清零,中断请求状态标志位清零,周期中断标志位清零,DS12887不可以操作,闹钟中断标志位清零,IRQ呈高阻状态,方波输出允许位清零,更新完成中断允许位清零。IRQ是中断请求输出,当中断状态位和中断允许位有效时,IRQ保持低电平。复位和读C寄存器都可以清除中断信号。没有中断时IRQ保持高阻状态,其它中断源还可以接到中断上。另外由于IRQ是漏极输出,因此需要外接上拉电阻。SQW是方波输出引脚,当电源电压低于4.25V时此脚没有作用。VCC是电源引脚。NC是空引脚。DS12887由晶振,周期中断/方波选择器,方波输出,寄存器ABCD,时钟/日历/闹钟RAM,114字节通用RAM,BCD/二进制数码累加器,时钟/日历更新,总线选择,电源开关和写保护这些部分组成。当VCC高于4.25V 200ms之后,芯片可以被外部程序操作。当VCC低于4.25V时,芯片处于写保护状态,所有的输入均无效,同时所有输出呈高阻状态,当VCC低于3V时,DS12887自动将供电方式改为由内部电池供电。DS12887地址包括114字节通用RAM,10字节用于记录时间,日历,闹钟信息的RAM和4字节的控制、状态RAM.所有的字节都可以在除以下的情况下直接读写。1,寄存器C、D为只读,寄存器A的第七位为只读,秒字节的高位为只读。时间,日历,闹钟的信息所在的寄存器的详细分布图如表2-1所示地址功能十进制范围范围二进制模式BCD模式0秒0-5900-3B00-591秒闹钟0-5900-3B00-592分钟0-5900-3B00-593分钟闹钟0-5900-3B00-594小时(12时制)1-1201-0CAM,81-8CPM01-12AM,81-92PM小时(24时制)0-2300-1700-235时闹钟(12时制)1-1201-0CAM,81-8CPM01-12AM,81-92PM时闹钟(24时制)0-2300-1700-236星期(星期天=1)1-700-0700-077日期1-3101-1F01-318月份1-1201-0C01-129年0-9900-6300-99表2-1,时间,日历,闹钟寄存器地址分布表控制、状态寄存器及其功能描述:寄存器 A BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0UIPDV2DV1DV0RS3RS2RS1RS0UIP:更新进行标志。DV2- DV0:为 010 时晶振工作,其他组合停止。RS3- RS0:频率选择。寄存器BBIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0SETPIEAIEUIESQWEDM24/12DSESET:为 1 时禁止更新。为 0 时正常。PIE:为 1 时周期中断允许。AIE:为 1 时警报中断允许。UIE:为 1 时更新结束中断允许。SQWE:为 1 时方波输出允许。DM:为 0 时时间为 BCD 码,为 1 时为二进制。24/12:为 1 时是 24 小时进制。为 0 时是 12 小时进制。DSE:置 0。寄存器CBIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0IRQFPFAFUF0000IRQF:中断申请标志。PF:周期中断标志。AF:警报中断标志。UF:更新结束中断标志。寄存器DBIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0VRT0000000VRT:为 0 时表示内部锂电池耗尽。时钟模块时钟模块DS12887的AD口与单片机的P0口相连,进行时间、日历数据输出。其它各功能端口的连接在主控电路中已有描述,不在赘述。另外DS12887的12脚与电源地相连,24脚与电源相连。总线选择端口MOT端与电源地相连。电路图如图2-8所示。图2-8 时钟模块电路3、按键电路设计根据设计要求,系统的按键电路用4个按键和一个拨码开关就可以进行对时间的调整,按键就采用最简单的点动式按钮,由单片机的I/O进行扫描,来实现扫描按键功能。其中,时间调整按钮与单片机STC89C52的P3.5相连,其功能是当按下此键时,开始调整年、月、日、星期、时、分、秒,没按一次就改变一个相应的要改变的位;闹钟调整按钮与单片机STC89C52的P3.4相连,其功能是当按下此键时开始进行闹钟调整,并且每按一次就改变一次要调整的位;加法按钮与单片机STC89C52的P2.5连,其功能是每按一次此键就将相应的要改变的位的数值加一;减法按钮与单片机STC89C52的P2.6连,其功能是每按下一次此键就将要改变的位的数值减一;近远程选择按钮与STC89C52的P2.4相连。电路图如图2-9所示。图2-9 按键电路4、图形点阵液晶显示器12864简介点阵LCD的显示原理:在数字电路中,所有的数据都是以0和1保存的,对LCD控制器进行不同的数据操作,可以得到不同的结果。对于显示英文操作,由于英文字母种类很少,只需要8位(一字节)即可。而对于中文,常用却有6000以上,于是我们的DOS前辈想了一个办法,就是将ASCII表的高128个很少用到的数值以两个为一组来表示汉字,即汉字的内码。而剩下的低128位则留给英文字符使用,即英文的内码15。那么,得到了汉字的内码后,还仅是一组数字,那又如何在屏幕上去显示呢?这就涉及到文字的字模,字模虽然也是一组数字,但它的意义却与数字的意义有了根本的变化,它是用数字的各位信息来记载英文或汉字的形状。12864是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及12864全点阵液晶显示器组成。可完成图形显示,也可以显示84个(1616点阵)汉字。12864LCD的引脚说明如表2-2所示。表2-2 液晶模块12864的管脚说明管脚号管脚名称LEVER管脚功能描述1VSS0电源地2VDD+5.0V电源电压3V0-液晶显示器驱动电压4D/I(RS)H/LD/I=“H”,表示DB7DB0为显示数据D/I=“L”,表示DB7DB0为显示指令数据5R/WH/LR/W=“H”,E=“H”数据被读到DB7DB0R/W=“L”,E=“HL”数据被写到IR或DR6EH/LR/W=“L”,E信号下降沿锁存DB7DB0R/W=“H”,E=“H”DDRAM数据读到DB7DB07DB0H/L数据线8DB1H/L数据线9DB2H/L数据线10DB3H/L数据线11DB4H/L数据线12DB5H/L数据线13DB6H/L数据线14DB7H/L数据线15CS1H/LH:选择芯片(右半屏)信号16CS2H/LH:选择芯片(左半屏)信号17RETH/L复位信号,低电平复位18VOUT-10VLCD驱动负电压19LED+-LED背光板电源20LED-LED背光板电源液晶显示模块的特殊寄存器说明:在使用12864LCD前先必须了解以下功能器件才能进行编程。12864内部功能器件及相关功能如下:1. 指令寄存器(IR)IR是用于寄存指令码,与数据寄存器数据相对应。当D/I=0时,在E信号下降沿的作用下,指令码写入IR。2数据寄存器(DR)DR是用于寄存数据的,与指令寄存器寄存指令相对应。当D/I=1时,在下降沿作用下,图形显示数据写入DR,或在E信号高电平作用下由DR读到DB7DB0数据总线。DR和DDRAM之间的数据传输是模块内部自动执行的。3忙标志:BFBF标志提供内部工作情况。BF=1表示模块在内部操作,此时模块不接受外部指令和数据。BF=0时,模块为准备状态,随时可接受外部指令和数据。利用STATUS READ指令,可以将BF读到DB7总线,从检验模块之工作状态。4显示控制触发器DFF此触发器是用于模块屏幕显示开和关的控制。DFF=1为开显示(DISPLAY OFF),DDRAM的内容就显示在屏幕上,DFF=0为关显示(DISPLAY OFF)。DDF的状态是指令DISPLAY ON/OFF和RST信号控制的。5XY地址计数器XY地址计数器是一个9位计数器。高3位是X地址计数器,低6位为Y地址计数器,XY地址计数器实际上是作为DDRAM的地址指针,X地址计数器为DDRAM的页指针,Y地址计数器为DDRAM的Y地址指针。X地址计数器是没有记数功能的,只能用指令设置。Y地址计数器具有循环记数功能,各显示数据写入后,Y地址自动加1,Y地址指针从0到63。6显示数据RAM(DDRAM)DDRAM是存储图形显示数据的。数据为1表示显示选择,数据为0表示显示非选择。DDRAM与地址和显示位置的关系见DDRAM地址表。7Z地址计数器Z地址计数器是一个6位计数器,此计数器具备循环记数功能,它是用于显示行扫描同步。当一行扫描完成,此地址计数器自动加1,指向下一行扫描数据,RST复位后Z地址计数器为0。Z地址计数器可以用指令DISPLAY START LINE预置。因此,显示屏幕的起始行就由此指令控制,即DDRAM的数据从哪一行开始显示在屏幕的第一行。此模块的DDRAM共64行,屏幕可以循环滚动显示64行。8. 字符显示FYD12864-0402B每屏可显示4行8列共32个1616点阵的汉字,每个显示RAM可显示1个中文字符或2个168点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。FYD12864-0402B内部提供1282字节的字符显示RAM缓冲区(DDRAM)。字符显示是通过将字符显示编码写入该字符显示RAM实现的。根据写入内容的不同,可分别在液晶屏上显示CGROM(中文字库)、HCGROM(ASCII码字库)及CGRAM(自定义字形)的内容。三种不同字符/字型的选择编码范围为:00000006H(其代码分别是0000、0002、0004、0006共4个)显示自定义字型,02H7FH显示半宽ASCII码字符,A1A0HF7FFH显示8192种GB2312中文字库字形。字符显示RAM在液晶模块中的地址80H9FH。字符显示的RAM的地址与32个字符显示区域有着一一对应的关系,其对应关系如表2-3所示。表2-3 字符显示RAM在液晶模块中的地址表80H81H82H83H84H85H86H87H90H91H92H93H94H95H96H97H88H89H8AH8BH8CH8DH8EH8FH98H99H9AH9BH9CH9DH9EH9FH显示模块电路如图2-10所示,液晶模块的1管脚接电源地,15管脚用于接电源地,19管脚用于接电源地。2管脚接电源给液晶显示器供电,3管脚接电源用于提供液晶显示器显示驱动电压,17管脚接电源,20管脚接电源用与提供背景光。4管脚接单片机的P1.3用于接收数据或者指令,5管脚接单片机的P1.4选择数据被读写到什么位置,6管脚接单片机的P1.5用于提供锁存信号。图2-10 显示模块六、系统软件设计软件是系统的主要组成部分,也是整个调试的重点和难点工作。本设计采用了汇编语言,因为汇编语言更接近机器语言,可以直接存取寄存器和I/O,编写的代码可以非常精确的被执行,可以编写出比一般编译系统高效的代码,可以作为不同语言或不同标准的接口。因此,依据课题设计的要求,采用汇编语言进行软件编程,用模块化程序设计思想,将软件划分成若干模块单元;包括:DS12887时钟显示模块、延时等模块,键盘扫描子程序,按键处理子程序模块,通信中断子程序,1、系统主程序设计主程序的主要功能是显示日期时间信息。在主程序中,系统上电自动复位以后首先进行系统的液晶显示、时钟芯片DS12887初始化,然后读写日期、时间等信息,待数据读写结束后显示时钟。主程序流程如图3-1所示。图3-1 主程序流程图主程序说明,当主程序运行时,先将液晶显示器清屏,然后将单片机和时钟日历芯片DS12887初始化,即将时钟的初始时间设定为2005年月日2、时钟芯片DS12887驱动程序设计首先对时钟芯片DS12887初始化,经过对状态寄存器判断之后,对DS12887进行读操作,读操作时利用时钟日历地址相邻的特点,直接使地址增加,随后判断数据是否读完了。若读完了,则返回主程序;若没有读完,则继续增加地址,直到读数据完成为止。如图3-2所示。图3-2 DS12887时钟芯片的读操作流程图3、 液晶显示模块程序设计 本设计用的液晶模块是12864液晶模块,这个模块可以进行串口通信也可以进行并口通信,由于单片机口线限制,在这里采用了串口设计思路。本设计采用了分屏显示的原理,在时间显示时显示屏一,在时间调整时显示屏二,其流程图分别如图3-3、3-4所示。图3-3 时间显示,屏一显示流程图在屏一显示流程图中,显示设置液晶显示设置为全屏显示,显示界面没有光标显示,年月日的显示从第二行第一个字符开始,时分秒的显示从第三行第一个字符开始。图3-4 时间调整显示,屏二显示流程图在显示屏二时应先判断是否有调整时间的请求,如果有时间调整的要求即有按键按下则显示此屏,显示此屏时先进行显示设置,因为要调整时间因此要用光标表示出要调整的位,因此显示设置中要调整出光标,调整时间时先调出当前时间,从当前时间开始调整,然后判断按键,根据按键来调整时间,调整完成之后再返回时间显示即显示屏一。4、 按键模块程序设计 按键调整程序模块是用来调整时间的,当P3.4按键按下时进入时间调整界面,再按P3.4就会依次改变要调整的参量,依次调整的参量为年、月、日、时、分、秒。当选择好了要调整的位后再按P3.5就会实现相应位的加一操作,按P2.6就会实现相应位的减一操作。当调整完毕之后,再按P3.4键就会返回时间显示界面,从刚才调整好的时间开始显示、计时。其流程图如图3-5所示图3-5 按键调整模块流程图七、心得体会1、本文的主要工作和成果系统采用了以广泛使用的单片机STC89C52为核心,配合时钟芯片DS12887,并采用LCD显示电路,键盘扫描电路所设计的一款可以进行远程调控的时钟电路。主要工作和成果如下:(1)介绍基于单片机的时钟电路的设计方法,并对基于单片机的时钟的应用进行了初步探讨。(2)介绍了时钟芯片DS12887的基本原理、特性及使用方法。对单片机软硬件资源和接口扩展都有了深入的学习。(3)在系统的软件仿真调试中,运用了PROTEL、WAVE等软件;学习了他们的基本操作,掌握了程序的编译过程、电路图的绘制过程。2、课题设计中不足及其展望本设计重点研究实现了基于单片机与时钟芯片这种模式的时钟,从原理上对单片机和时钟芯片有了深一步的认识。但是,时钟除了能够显示基本日期时间功能外,还可以显示、设置闹钟并可在工业测量控制系统中起到定时、监控作用,以及对某些影像数据的实时记录功能等。所以说,实时时钟在工农业的监控中,它能发挥的作用会更多更大!它的这些功能还没有完善,希望以后有机会可继续完善其相应的功能。 在基于单片机的数字时钟电路设计过程中,我学到了很多重要的东西,其中最重要的是如何将实践和理论相联系,怎样将我所学到的知识运用到我以后的工作中去。大学的课堂的学习只是在给我们灌输专业知识,而我们应把所学的用到我们现实的生活中去,此次的时钟设计给我奠定了一个实践基础。这次课程设计为使我得到了很大收获:不仅学到了许多了关于单片机方面的知识,熟悉了与单片机相关的两款软件WAVE和STC-ISP V35,提高了实验技能;而且也使我的动手能力和电路设计能力得到了极大的提高。在此次设计中,我的难点是程序的调试,由于以前仅仅学了一点汇编语言的皮毛,所以编一个完整的程序很是吃力!但是经过这一段时间的学习,我还是解决了一些问题。软件调试中也出现了一些问题,就是程序在编译中仿真器的设置出现了错误,从而使系统的编译通不过,给系统的调试带来了极大的不便,所以对软件的使用还须更进一步的熟练掌握。由于时间比较仓促,我只能做到达到现在这样的水平;其他的希望以后的工作中,再做深刻地研究。附录A:电路原理图附录B:程序清单/主程序ORG0000HAJMPMAINORG000BHAJMPTZPORG0030HMAIN:MOVSP,#60HMOVR4,#00HMOVTMOD,#02hMOVTH0,#06HMOVTL0,#06HSETBEASETBET0SETBTR0/初始化MOVR2,#3MOVR1,#30HLOOP:MOVR1,#00HINCR1DJNZR2,LOOPLCALLRINGPI/LOOP2:MOVR2,#6MOVR1,#30HLCALLDPZP/开启节能功能JBP1.0,XWJNJBP1.0,$/ 闹钟设置入口ZWJN:JBP1.1,XPP1LCALLRINGPLCALLRELAY/调时入口XPP1:JBP1.3,XPP2LCALLZPP1XPP2:JBP1.2,ZPPLCALLZPP2ZPP:AJMPLOOP2/定时器0中断TZP:PUSH00HPUSH03HINC R4 / 软件-硬件延时1秒CJNER4,#40,ENDIMOVR4,#0INCR5CJNER5,#100,ENDI /结束MOVR5,#0ZP:MOVR0,#30HMOVR3,#3MOVDPTR,#TCOUNTLCALLTTZPLCALLRINGENDI:POP03HPOP00HRETI/定时器0中断返回/软中断1ZPP1:MOVA,31HADDA,#1DA AMOV31H,ACJNEA,#60H,END1MOV31H,#00HEND1:LCALLRELAYRET/软中断2ZPP2:MOVA,32HADDA,#1DAAMOV32H,ACJNEA,#24H,END2MOV32H,#00HEND2:LCALLRELAYRET/延时显示程序RELAY:MOVR6,#255REP:MOVR7,#4REEE:MOVR2,#6MOVR1,#30HLCALLDPZPDJNZR7,REEEDJNZR6,REPRET/延时显示程序结束/显示子程序DPZP:MOVP0,#0FFH / 显示横杠MOVP2,#0DBHMOVP0,#0BFH / ENDDPZP1:MOVP0,#0FFHMOVDPTR,

温馨提示

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

评论

0/150

提交评论