基于AT89C2051六位数字钟.doc

上传人:h**** 文档编号:137944 上传时间:2018-07-10 格式:DOC 页数:13 大小:386.50KB
下载 相关 举报
基于AT89C2051六位数字钟.doc_第1页
第1页 / 共13页
基于AT89C2051六位数字钟.doc_第2页
第2页 / 共13页
基于AT89C2051六位数字钟.doc_第3页
第3页 / 共13页
基于AT89C2051六位数字钟.doc_第4页
第4页 / 共13页
基于AT89C2051六位数字钟.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、 NO: 1 目录 凌阳, 拇指 凌阳 第一章 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳方案选择及总体设计 凌阳, 拇指 凌阳 (一)、 设计 目的 凌阳, 拇指 凌阳 (二)、 设计 设备 凌阳, 拇指 凌阳 (三)、 设计 原理 凌阳, 拇指 凌阳 第二章 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳硬件设计及电路图 凌阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 (一)电路原理图 及 PCB 凌阳, 拇指 凌阳凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳

2、 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳 ,拇指 凌阳 (二) AT89C2051芯片介绍 凌阳, 拇指 凌阳 第三章 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳软件设计及程序清单 凌阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 (一 )软件设计 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 (二 )程序清单 凌阳,

3、 拇指 凌阳 第四章 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳实物制作及调试说明 凌阳, 拇指 凌阳 第五章 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳结论 凌阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳 引言 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 20 世纪末 , 拇指 电子技术获得了飞速的发展 , 拇指 在其推动

4、下 , 拇指 现代电子产品几乎渗透了社会的各个领域 , 拇指 有力地推动了社会生产力的发展和社会信息化程度的提高 ,拇指 同时也使现代电子产品性能进一步提高 , 拇指 产品 更新换代的节奏也越来越快 。 食指 凌阳, 拇指 凌阳凌阳, 拇指 凌阳 时间对人们来说总是那么宝贵 , 拇指 工作的忙碌性和繁杂性容易使人忘记当前的时NO: 2 间 。 食指 忘记了要做的事情 , 拇指 当事情不是很重要的时候 , 拇指 这种遗忘无伤大雅 。 食指 但是 ,拇指 一旦重要事情 , 拇指 一时的耽误可能酿成大祸 。 食指 例如 , 拇指 许多火灾都是由于人们一时忘记了关闭煤气或是忘记充电时间 。 食指 尤其

5、在医院 , 拇指 每次护士都会给病人作皮试 , 拇指测试病人是否对药物过敏 。 食指 注射后 , 拇指 一般等待 5 分钟 , 拇指 一旦超时 , 拇指 所作的皮试试验就会无效 。 食指 手表当然是一个好的选择 , 拇指 但是 , 拇指 随着接受皮试的人数增加 , 拇指 到底是哪个人的皮试到时间却难以判断 。 食指 所以 , 拇指 要制作一个定时系统 。 食指 随时提醒这些容易忘记时间的人 。 食指 凌阳, 拇指 凌阳凌阳, 拇指 凌阳 钟表的数字化给人们生产生活带来了极大的方便 , 拇指 而且大大地扩展了钟表原先的报时功能 。 食指 诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播

6、、定时启闭电路、定时开关烘箱、通断动力设备 , 拇指 甚至各种定时电气的自动启用等 ,拇指 所有这些 , 拇指 都是以钟表数字化为基础的 。 食指 因此 , 拇指 研究数字钟及扩大其应用 , 拇指 有着非常现实的意义 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 单片机技术是高等院校电类专业的一门重要技术基础课 , 拇指 也是现代控制类、机电类和计算机类各专业的一门必修课程 。 食指 如果要在理论中实践真理真正的学习到实用的知识 , 拇指 课程设计是必要的过程 。 食指 MCS-51 单片机的内部结构和工作原理、指令系统和汇编语言程序设计、存储器扩张和中断系统、 I/O 接口和总线等问题

7、,拇指 都在课 程设计中得到了很好的体现 , 拇指 并在此基础上讨论单片机应用系统的设计 方法 , 拇指 以培养学生在工程应用中解决实际问题的能力 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 本次课程设计是现代单片机及其接口芯片都是用大规模或超大规模集成电路工艺制成的 , 拇指 它惯有数字电子技术中分析和理解芯片内部工作原理的知识 。 食指在课题中单片机中的 AT89C2051 制作简易电子钟 。 食指 电子钟是智能化器仪表的一种 , 拇指 它可广泛应用于工业、农业、日常生活等领域 。 食指 它以微控制器为核心 , 拇指 与传统钟表相比较 , 拇指

8、 它具有高精度、高可靠性、操作方便、价格便宜、智能化等特点 ,拇指 是钟表发展的新方向 , 拇指 具有一定的实用价值 。 食指 凌阳, 拇指 凌阳 第一章 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳方案 选择及总体设计 凌阳, 拇指 凌阳 (一)、 设计 目的 1.进一步掌握定时器的使用和编程方法 。 食指 凌阳, 拇指 凌阳 2.了解七段数码显示数字的原理 。 食指 凌阳, 拇指 凌阳 3掌握一个段锁存器 , 拇指 一个位锁存器同时显示多位数字的技术 凌阳, 拇指 凌阳 4.利用定时器 1 定时中断 , 拇指 控制电子钟走时 , 拇指 利用实验箱上的六个数码管显示分、秒 , 拇指 做成一个电

9、子钟 。 食指 显示格式为: 00 年 00 月 00 日 凌阳, 拇指 凌阳 定时时间常数计算方法为: 凌阳, 拇指 凌阳 定时器 1 工作于方式 1, 拇指 晶振频率为 12MHZ, 拇指 : 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 (二 ) 、 设计 设备 凌阳, 拇指 凌阳 EL-MUL-III 单片机试验箱、 AT89C2051CPU 模块 NO: 3 (三 )、 设计 原理 凌阳, 拇指 凌阳 本试验采用动态显示 。 食指 动态显示就是一位一位地轮流点亮显示器的各个位(扫描) 。 食指 将AT89C2051CPU 的 P1 口当作一个位锁存器使用 , 拇指 74LS273 作为段锁

10、存器 凌阳, 拇指 凌阳 第二章 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳硬件设计及电路图 凌阳, 拇指 凌阳 (一) 设计 电路 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 PCB 图 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳 ,拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 NO: 4 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 (二) AT89C2051 芯片介绍 凌阳

11、, 拇指 凌阳 1 内部结构 凌阳, 拇指 凌阳 AT89C2051 是一带有 2K字节闪速可编程可擦除只读存储器( EEPROM)的低电压 , 拇指 高性能 8位 CMOS 微处理器 。 食指 它采用 ATMEL的 高密 非易失存储技术制造并和工业标准 MCS-51 指令集和引脚结构兼容 。 食指 通过在单块芯片上组合通用的 CPLI 和闪速存储器 , 拇指ATMEL 的 AT89C2051 是一强劲的微型处理器 , 拇指 它对许多嵌入式控制应用提供一定高度灵活和成本低的解决办法 。 食指 凌 阳, 拇指 凌阳凌阳, 拇指 凌阳 AT89C2051 提供以下标准功能: 2K 字节闪速存储器

12、, 拇指 128 字节 RAM, 拇指 15根 I/O 口 , 拇指 两个 16位定时器 , 拇指 一个五向量两级中断结构 , 拇指 一个全双工串行口 , 拇指 一个精密模拟比较器以及两种可选 凌 阳, 拇指 凌阳 的软件节电工作方式 。 食指 空闲方停止 CPU 工作但允许 RAM、定时器 /计数器、串行工作口和中断系统继续工作 。食指 掉电方式保存 RAM 内容但振荡器停止工作并禁止有其它部件的工作到下一个硬件复位 。 食指 凌阳, 拇指 凌阳 2 AT89C2051 的引脚 功能 。 食指 凌 阳, 拇指 凌阳凌阳, 拇指 凌阳 1、 VCC:电源电压 。 食指 凌 阳, 拇指 凌阳凌阳

13、, 拇指 凌阳 2、 GND:地 。 食指 凌 阳, 拇指 凌阳凌阳, 拇指 凌阳 3、 P1 口: P1 口是一个 8 位双向 I/O口 。 食指 口引脚 P1.2P1.7 提供内部上拉电阻 , 拇指 P1.0 和 P1.1 要求外部上拉电阻 。 食指 P1.0 和 P1.1 还分别作为片内精密模拟比较器的同相输入 (ANI0)和反相输入 (AIN1)。 食指 P1 口输出缓冲器可吸收 20mA 电流并能直接驱动 LED显示 。 食指 当 P1 口引脚写入 “1” 时 , 拇指 其可用作输入端 , 拇指 当引脚 P1.2P1.7 用作输入并被外部拉低时 , 拇指 它们将因内部的写入 “1”

14、时 , 拇指 其可用作输入端 。 食指 当引脚 P1.2P1.7 用作输入并被外部拉低时 , 拇指 它们将因内部的 上拉电阻 而流出电流 。 食指 凌 阳, 拇指 凌阳凌阳, 拇指 凌阳 4、 P3 口: P3 口的 P3.0P3.5、 P3.7 是带有内部上拉电阻 凌 阳, 拇指 凌阳 的七个双向 I/O 口引脚 。 食指 P3.6 用于固定输入片内比较器的输出信号并且它作为一通用 I/O 引脚而不可访问 。 食指 P3 口缓冲器可吸收 20mA 电流 。 食指 当 P3 口写入 “1”时 , 拇指 它们被内部上拉电阻拉高并可用作输入端 。 食指 用作输入时 , 拇指 被外部拉低的 P3 口

15、脚将用上拉电阻而流出电流 凌阳, 拇指 凌阳 P3 口还用于实现 AT89C2051 的各种第二功能 , 拇指 如下表所列: 凌 阳, 拇指 凌阳凌阳, 拇指 凌阳 凌 阳, 拇指 凌阳 NO: 5 引脚口 功 凌阳, 拇指 凌阳 能 凌阳, 拇指 凌阳 P3.0 RXD 串行输入端口 P3.1 TXD 串行输出端口 P3.2 INT0 外中断 0 P3.3 INT1 外中断 1 P3.4 T0 定时器 0 外部输入 P3.5 凌阳, 拇指 凌阳 T1 定时器 1 外部输入 P3 口还接收一些用于闪速存储器编程和程序校验的控制信号 。 食指 凌 阳, 拇指 凌阳凌阳, 拇指 凌阳 5、 RST

16、:复位输入 。 食指 RST 一旦变成高电平所有 的 I/O 引脚就复位到 “1” 。食指 当振荡器正在运行时 , 拇指 持续给出 RST 引脚两个机器周期的高电平便可完成复位 。 食指 每一个机器周期需 12 个振荡器或时钟周期 。 食指 凌 阳, 拇指 凌阳凌阳, 拇指 凌阳 6、 XTAL1:作为振荡器反相器的输入和内部时钟发生器的输入 。 食指 凌 阳, 拇指 凌阳凌阳, 拇指 凌阳 7、 XTAL2:作为振荡器反相放大器的输出 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳,

17、拇指 凌阳 凌阳, 拇指 凌阳 第三章 凌 阳, 拇指 凌阳 凌 阳, 拇指 凌阳软件设计及程序清单 凌阳, 拇指 凌阳 软件设计 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 NO: 6 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 2程序清单 凌阳, 拇指 凌阳 AT89C2051 时钟程序 凌阳, 拇指 凌阳 ;凌阳, 拇指

18、 凌阳 ;凌 阳, 拇指 凌阳 ; 凌阳, 拇指 凌阳 定时器 T0、 T1 溢出周期为 50MS, 拇指 T0 为秒计数用 , 拇指 凌阳, 拇指 凌阳 T1 为调整时闪烁用 , 拇指 凌阳, 拇指 凌阳 ; 凌阳, 拇指 凌阳 P3.7 为调整按钮 , 拇指 P1 口 凌阳, 拇指 凌阳 为字符输出口 , 拇指 采用共阳显示管 。 食指 凌阳, 拇指 凌阳 ; 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ; 凌阳, 拇指 凌阳 中断入口程序 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ORG 凌阳, 拇指 凌阳 0000H 凌阳, 拇指 凌阳 ;程序

19、执行开始地址 凌阳, 拇指 凌阳 LJMP 凌阳, 拇指 凌阳 START 凌阳, 拇指 凌阳 ;跳到标号 START 执行 凌阳, 拇指 凌阳 ORG 凌阳, 拇指 凌阳 0003H 凌阳, 拇指 凌阳 ;外中断 0 中断程序入口 凌阳, 拇指 凌阳 RETI 凌阳, 拇指 凌阳 ;外中断 0 中断返回 凌阳, 拇指 凌阳 ORG 凌阳, 拇指 凌阳 000BH 凌阳, 拇指 凌阳 ;定时器 T0 中断程序入口 凌阳, 拇指 凌阳 LJMP 凌阳, 拇指 凌阳 INTT0 凌阳, 拇指 凌阳 ;跳 至 INTTO 执行 凌阳, 拇指 凌阳 ORG 凌阳, 拇指 凌阳 0013H 凌阳, 拇指

20、 凌阳 ;外中断 1 中断程序入口 凌阳, 拇指 凌阳 RETI 凌阳, 拇指 凌阳 ;外中断 1 中断返回 凌阳, 拇指 凌阳 ORG 凌阳, 拇指 凌阳 001BH 凌阳, 拇指 凌阳 ;定时器 T1 中断程序入口 凌阳, 拇指 凌阳 LJMP 凌阳, 拇指 凌阳 INTT1 凌阳, 拇指 凌阳 ;跳至 INTT1 执行 凌阳, 拇指 凌阳 ORG 凌阳, 拇指 凌阳 0023H 凌阳, 拇指 凌阳 ;串行中断程序入口地址 凌阳, 拇指 凌阳 RETI 凌阳, 拇指 凌阳 ;串行中断程序返回 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ; 凌阳, 拇指 凌阳 主 凌阳,

21、 拇指 凌阳 程 凌阳, 拇指 凌阳 序 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 START: 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R0,#70H 凌阳, 拇指 凌阳 ;清 70H-7AH 共 11 个内存单元 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R7,#0BH 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 CLEARDISP: 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R0,#00H 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 INC 凌阳, 拇指 凌阳 R0 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 DJNZ 凌阳, 拇

22、指 凌阳 R7,CLEARDISP 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 20H,#00H 凌阳, 拇指 凌阳 ;清 20H(标志用) 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 7AH,#0AH 凌阳, 拇指 凌阳 ;放入 “熄灭符 “数据 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 TMOD,#11H 凌阳, 拇指 凌阳 ;设 T0、 T1 为 16 位定时器 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 TL0,#0B0H 凌阳, 拇指 凌阳 ;50MS 定时初值( T0 计时用) 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 TH0,#3CH

23、 凌阳, 拇指 凌阳 ;50MS 定时初值 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 TL1,#0B0H 凌阳, 拇指 凌阳 ;50MS 定时初值( T1 闪烁定时用) 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 TH1,#3CH 凌阳, 拇指 凌阳 ;50MS 定时初值 凌阳, 拇指 凌阳 SETB 凌阳, 拇指 凌阳 EA 凌阳, 拇指 凌阳 ;总中断开放 凌阳, 拇指 凌阳 SETB 凌阳, 拇指 凌阳 ET0 凌阳, 拇指 凌阳 ;允许 T0 中断 凌阳, 拇指 凌阳 SETB 凌阳, 拇指 凌阳 TR0 凌阳, 拇指 凌阳 ;开启 T0 定时器 凌阳, 拇指 凌阳 MOV

24、凌阳, 拇指 凌阳 R4,#14H 凌阳, 拇指 凌阳 ;1 秒定时用初值( 50MS 20) 凌阳, 拇指 凌阳 NO: 7 START1: 凌阳, 拇指 凌阳 LCALL 凌阳, 拇指 凌阳 DISPLAY 凌阳, 拇指 凌阳 ;调用显示子程序 凌阳, 拇指 凌阳 JNB 凌阳, 拇指 凌阳 P3.7,SETMM1 凌阳, 拇指 凌阳 ;P3.7 口为 0 时转时间调整程序 凌阳, 拇指 凌阳 SJMP 凌阳, 拇指 凌阳 START1 凌阳, 拇指 凌阳 ;P3.7 口为 1 时跳 回 START1 凌阳, 拇指 凌阳 SETMM1: 凌阳, 拇指 凌阳 LJMP 凌阳, 拇指 凌阳 S

25、ETMM 凌阳, 拇指 凌阳 ;转到时间调整程序 SETMM 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ; 凌阳, 拇指 凌阳 1 秒计时程序 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;T0 中断服务程序 凌阳, 拇指 凌阳 INTT0: 凌阳, 拇指 凌阳 PUSH 凌阳 ,拇指 凌阳 ACC 凌阳, 拇指 凌阳 ;累加器入栈保护 凌阳, 拇指 凌阳 PUSH 凌阳, 拇指 凌阳 PSW 凌阳, 拇指 凌阳 ;状态字入栈保护 凌阳, 拇指 凌阳 CLR 凌阳, 拇指 凌阳 ET0 凌阳, 拇指 凌阳 ;关 T0 中断允许 凌阳, 拇指 凌阳 CL

26、R 凌阳, 拇指 凌阳 TR0 凌阳, 拇指 凌阳 ;关闭定时器 T0 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 A,#0B7H 凌阳, 拇指 凌阳 ;中断响应时间同步修正 凌阳, 拇指 凌阳 ADD 凌阳, 拇指 凌阳 A,TL0 凌阳, 拇指 凌阳 ;低 8 位初值修正 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 TL0,A 凌阳, 拇指 凌阳 ;重装初值(低 8 位修正值) 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 A,#3CH 凌阳, 拇指 凌阳 ;高 8 位初值修正 凌阳, 拇指 凌阳 ADDC 凌阳, 拇指 凌阳 A,TH0 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳

27、 MOV 凌阳, 拇指 凌阳 TH0,A 凌阳, 拇指 凌阳 ;重装初值(高 8 位修正值) 凌阳, 拇指 凌阳 SETB 凌阳, 拇指 凌阳 TR0 凌阳, 拇指 凌阳 ;开启定时器 T0 凌阳, 拇指 凌阳 DJNZ 凌阳, 拇指 凌阳 R4, 凌阳, 拇指 凌阳 OUTT0 凌阳, 拇指 凌阳 ;20 次中断未到中断退出 凌阳, 拇指 凌阳 ADDSS: 凌阳, 拇指 凌阳 MOV 凌阳 ,拇指 凌阳 R4,#14H 凌阳, 拇指 凌阳 ;20 次中断到( 1 秒)重赋初值 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R0,#71H 凌阳, 拇指 凌阳 ;指向 天 计时单元( 71H

28、-72H) 凌阳, 拇指 凌阳 ACALL 凌阳, 拇指 凌阳 ADD1 凌阳, 拇指 凌阳 ;调用加 1 程序(加 1 秒操作) 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 A,R3 凌阳, 拇指 凌阳 ;秒数据放入 A( R3 为 2 位十进制数组合) 凌阳, 拇指 凌阳 CLR 凌阳, 拇指 凌阳 C 凌阳, 拇指 凌阳 ;清进位标志 凌阳, 拇指 凌阳 CJNE 凌阳, 拇指 凌阳 A,#30H,ADDMM 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ADDMM: 凌阳, 拇指 凌阳 JC 凌阳, 拇指 凌阳 OUTT0 凌阳, 拇指 凌阳 ;小于 30 天 时中断退出 凌阳, 拇指

29、 凌阳 ACALL 凌阳, 拇指 凌阳 CLR0 凌阳, 拇指 凌阳 ;大于或等于 30 天 时对秒计时单元清 0 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R0,#77H 凌阳, 拇指 凌阳 ;指向 月 计时单元( 76H-77H) 凌阳, 拇指 凌阳 ACALL 凌阳, 拇指 凌阳 ADD1 凌阳, 拇指 凌阳 ;月 计时单元加 1 月 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 A,R3 凌阳, 拇指 凌阳 ;分数据放入 A 凌阳, 拇指 凌阳 CLR 凌阳, 拇指 凌阳 C 凌阳, 拇指 凌阳 ;清进位标志 凌阳, 拇指 凌阳 CJNE 凌阳, 拇指 凌阳 A,#12H,AD

30、DHH 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ADDHH: 凌阳, 拇指 凌阳 JC 凌阳, 拇指 凌阳 OUTT0 凌阳, 拇指 凌阳 ;小于 12 个月 时中断退出 凌阳, 拇指 凌阳 ACALL 凌阳, 拇指 凌阳 CLR0 凌阳, 拇指 凌阳 ;大于或等于 12 个月 时分计时单元清 0 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R0,#79H 凌阳, 拇指 凌阳 ;指向 年 计时单元( 78H-79H) 凌阳, 拇指 凌阳 ACALL 凌阳, 拇指 凌阳 ADD1 凌阳, 拇指 凌阳 ;年 计时 单元加 1 年 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 A,R3 凌阳

31、, 拇指 凌阳 ;时数据放入 A 凌阳, 拇指 凌阳 CLR 凌阳, 拇指 凌阳 C 凌阳, 拇指 凌阳 ;清进位标志 凌阳, 拇指 凌阳 CJNE 凌阳, 拇指 凌阳 A,#99H,HOUR 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 HOUR: 凌阳, 拇指 凌阳 JC 凌阳, 拇指 凌阳 OUTT0 凌阳, 拇指 凌阳 ;小于 99 年 时中断退出 凌阳, 拇指 凌阳 ACALL 凌阳, 拇指 凌阳 CLR0 凌阳, 拇指 凌阳 ;大于或等于 99 年 小时计时单元清 0 凌阳, 拇指 凌阳 OUTT0: 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 72H,76H 凌阳, 拇指 凌阳

32、;中断退出时将 月 、 年 计时单元数据移 凌阳, 拇指 凌阳 NO: 8 MOV 凌阳, 拇指 凌阳 73H,77H 凌阳, 拇指 凌阳 ;入对应显示单元 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 74H,78H 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 75H,79H 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 POP 凌阳, 拇指 凌阳 PSW 凌阳, 拇指 凌阳 ;恢复状态字(出栈) 凌阳, 拇指 凌阳 POP 凌阳, 拇指 凌阳 ACC 凌阳, 拇指 凌阳 ;恢复累加器 凌阳, 拇指 凌阳 SETB 凌阳, 拇指 凌阳 ET0 凌阳, 拇指 凌阳 ;开

33、放 T0 中 断 凌阳, 拇指 凌阳 RETI 凌阳, 拇指 凌阳 ;中断返回 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ; 凌阳, 拇指 凌阳 闪动调时 凌阳, 拇指 凌阳 程 凌阳, 拇指 凌阳 序 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;T1 中断服务程序 , 拇指 用作时间调整时调整单元闪烁指示 凌阳, 拇指 凌阳 INTT1: 凌阳, 拇指 凌阳 PUSH 凌阳, 拇指 凌阳 ACC 凌阳, 拇指 凌阳 ;中断现场保护 凌阳, 拇指 凌阳 PUSH 凌阳, 拇指 凌阳 PSW 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 MOV 凌阳, 拇

34、指 凌阳 TL1, 凌阳, 拇指 凌阳 #0B0H 凌阳, 拇指 凌阳 ;装定时器 T1 定时初值 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 TH1, 凌阳, 拇指 凌阳 #3CH 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 DJNZ 凌阳, 拇指 凌阳 R2,INTT1OUT 凌阳, 拇指 凌阳 ;0.3 秒未到退出中断( 50MS 中断 6 次) 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R2,#06H 凌阳, 拇指 凌阳 ;重装 0.3 秒定时用初值 凌阳, 拇指 凌阳 CPL 凌阳, 拇指 凌阳 02H 凌阳, 拇指 凌阳 ;0.3 秒定时到对闪烁标志取反 凌阳, 拇指 凌阳

35、 JB 凌阳, 拇指 凌阳 02H,FLASH1 凌阳, 拇指 凌阳 ;02H 位为 1 时显示单元 “熄灭 “凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 72H,76H 凌阳, 拇指 凌阳 ;02H 位为 0 时正常显示 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 73H,77H 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 74H,78H 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 75H,79H 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 INTT1OUT: 凌阳, 拇指 凌阳 POP 凌阳, 拇指 凌阳 PSW 凌阳, 拇指 凌阳

36、 ;恢复现场 凌阳, 拇指 凌阳 POP 凌阳, 拇指 凌阳 ACC 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 RETI 凌阳, 拇指 凌阳 ;中断退出 凌阳, 拇指 凌阳 FLASH1: 凌阳, 拇指 凌阳 JB 凌阳, 拇指 凌阳 01H,FLASH2 凌阳, 拇指 凌阳 ;01H 位为 1 时 , 拇指 转小时熄灭控制 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 72H,7AH 凌阳, 拇指 凌阳 ;01H 位为 0 时 , 拇指 “熄灭符 “数据放入分 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 73H,7AH 凌阳, 拇指 凌阳 ;显示 单元( 72H-73H) , 拇指 将

37、不显示分数据 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 74H,78H 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 75H,79H 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 AJMP 凌阳, 拇指 凌阳 INTT1OUT 凌阳, 拇指 凌阳 ;转中断退出 凌阳, 拇指 凌阳 FLASH2: 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 72H,76H 凌阳, 拇指 凌阳 ;01H 位为 1 时 , 拇指 “熄灭符 “数据放入小时 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 73H,77H 凌阳, 拇指 凌阳 ;显示单元( 74H-75H) , 拇指 小 时

38、数据将不显示 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 74H,7AH 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 75H,7AH 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 AJMP 凌阳, 拇指 凌阳 INTT1OUT 凌阳, 拇指 凌阳 ;转中断退出 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ; 凌阳, 拇指 凌阳 加 1 子 凌阳, 拇指 凌阳 程 凌阳, 拇指 凌阳 序 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ADD1: 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 A,R0 凌阳,

39、拇指 凌阳 ;取当前计时单元数据到 A 凌阳, 拇指 凌阳 NO: 9 DEC 凌阳, 拇指 凌阳 R0 凌阳, 拇指 凌阳 ;指向前一地址 凌阳, 拇指 凌阳 SWAP 凌阳, 拇指 凌阳 A 凌阳, 拇指 凌阳 ;A 中数据高四位与低四位交换 凌阳, 拇指 凌阳 ORL 凌阳, 拇指 凌阳 A,R0 凌阳, 拇指 凌阳 ;前一地址中数据放入 A 中低四位 凌阳, 拇指 凌阳 ADD 凌阳, 拇指 凌阳 A,#01H 凌阳, 拇指 凌阳 ;A 加 1 操作 凌阳, 拇指 凌阳 DA 凌阳, 拇指 凌阳 A 凌阳, 拇指 凌阳 ;十进制调整 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R3

40、,A 凌阳, 拇指 凌阳 ;移入 R3 寄存器 凌阳, 拇指 凌阳 ANL 凌阳, 拇指 凌阳 A,#0FH 凌阳, 拇指 凌阳 ;高四位变 0 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R0,A 凌阳, 拇指 凌阳 ;放回前一地址单元 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 A,R3 凌阳, 拇指 凌阳 ;取回 R3 中暂存数据 凌阳, 拇指 凌阳 INC 凌阳, 拇指 凌阳 R0 凌阳, 拇指 凌阳 ;指向当前地址单元 凌阳, 拇指 凌阳 SWAP 凌阳, 拇指 凌阳 A 凌阳, 拇指 凌阳 ;A 中数据高四位与低四位交换 凌阳, 拇指 凌阳 ANL 凌阳, 拇指 凌阳 A,

41、#0FH 凌阳, 拇指 凌阳 ;高四位变 0 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R0,A 凌阳, 拇指 凌阳 ;数据放入当削地址单元中 凌阳, 拇指 凌阳 RET 凌阳, 拇指 凌阳 ;子程序返回 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ; 凌阳, 拇指 凌阳 清零程序 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;对计时单元复零用 凌阳, 拇指 凌阳 CLR0: 凌阳, 拇指 凌阳 CLR 凌阳, 拇指 凌阳 A 凌阳, 拇指 凌阳 ;清累加器 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R0,A 凌阳, 拇指 凌阳 ;清当前地址

42、单元 凌阳, 拇指 凌阳 DEC 凌阳, 拇指 凌阳 R0 凌阳, 拇指 凌阳 ;指向前一地址 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R0,A 凌阳, 拇指 凌阳 ;前一地址单元清 0 凌阳, 拇指 凌阳 RET 凌阳, 拇指 凌阳 ;子程序返回 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ; 凌阳, 拇指 凌阳 时钟调整程序 凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;凌阳, 拇指 凌阳 ;当调时按键按下时进入此程序 凌阳, 拇指 凌阳 SETMM: 凌阳, 拇指 凌阳 cLR 凌阳, 拇指 凌阳 ET0 凌阳, 拇指 凌阳 ;关定时器 T0 中断 凌阳, 拇指

43、 凌阳 CLR 凌阳, 拇指 凌阳 TR0 凌阳, 拇指 凌阳 ;关闭定时器 T0 凌阳, 拇指 凌阳 LCALL 凌阳, 拇指 凌阳 DL1S 凌阳, 拇指 凌阳 ;调用 1 秒延时程序 凌阳, 拇指 凌阳 JB 凌阳, 拇指 凌阳 P3.7,CLOSEDIS 凌阳, 拇指 凌阳 ;键按下时间小于 1 秒 , 拇指 关闭显示(省电) 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R2,#06H 凌阳, 拇指 凌阳 ;进入调时状态 , 拇指 赋闪烁定时初值 凌阳, 拇指 凌阳 SETB 凌阳, 拇指 凌阳 ET1 凌阳, 拇指 凌阳 ;允许 T1 中断 凌阳, 拇指 凌阳 SETB 凌阳,

44、拇指 凌阳 TR1 凌阳, 拇指 凌阳 ;开启定时器 T1 凌阳, 拇指 凌阳 SET2: 凌阳, 拇指 凌阳 JNB 凌阳, 拇指 凌阳 P3.7,SET1 凌阳, 拇指 凌阳 ;P3.7 口为 0(键未释放) , 拇指 等待 凌阳, 拇指 凌阳 SETB 凌阳, 拇指 凌阳 00H 凌阳, 拇指 凌阳 ;键释放 , 拇指 分调整闪烁标志置 1 凌阳, 拇指 凌阳 SET4: 凌阳, 拇指 凌阳 JB 凌阳, 拇指 凌阳 P3.7,SET3 凌阳, 拇指 凌阳 ;等待键按下 凌阳, 拇指 凌阳 LCALL 凌阳, 拇指 凌阳 DL05S 凌阳, 拇指 凌阳 ;有键按下 , 拇指 延时 0.5

45、 秒 凌阳, 拇指 凌阳 JNB 凌阳, 拇指 凌阳 P3.7,SETHH 凌阳, 拇指 凌阳 ;按下时间大于 0.5 秒转调小时状态 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 R0,#77H 凌阳, 拇指 凌阳 ;按下时间小于 0.5 秒加 1 分钟操作 凌阳, 拇指 凌阳 LCALL 凌阳, 拇指 凌阳 ADD1 凌阳, 拇指 凌阳 ;调用加 1 子程序 凌阳, 拇指 凌阳 MOV 凌阳, 拇指 凌阳 A,R3 凌阳, 拇指 凌阳 ;取调整单元数据 凌阳, 拇指 凌阳 NO: 10 CLR 凌阳, 拇指 凌阳 C 凌阳, 拇指 凌阳 ;清进位标志 凌阳, 拇指 凌阳 CJNE 凌阳,

46、 拇指 凌阳 A,#30H,HHH 凌阳, 拇指 凌阳 ;调整单元数据与 30 比较 凌阳, 拇指 凌阳 HHH: 凌阳, 拇指 凌阳 JC 凌阳, 拇指 凌阳 SET4 凌阳, 拇指 凌阳 ;调整单元数据小于 30 转 SET4 循环 凌阳, 拇指 凌阳 LCALL 凌阳, 拇指 凌阳 CLR0 凌阳, 拇指 凌阳 ;调整单元数据大于 或等于 30 时清 0 凌阳, 拇指 凌阳 CLR 凌阳, 拇指 凌阳 C 凌阳, 拇指 凌阳 ;清进位标志 凌阳, 拇指 凌阳 AJMP 凌阳, 拇指 凌阳 SET4 凌阳, 拇指 凌阳 ;跳转到 SET4 循环 凌阳, 拇指 凌阳 CLOSEDIS: 凌阳, 拇指 凌阳 SETB 凌阳, 拇指 凌阳 ET0 凌阳, 拇指 凌阳 ;省电( LED 不显示)状态 。 食指 开 T0 中断 凌阳, 拇指 凌阳 SETB 凌阳, 拇指 凌阳 TR0 凌阳, 拇指 凌阳 ;开启 T0 定时器(开时钟) 凌阳, 拇指 凌阳 CLOSE: 凌阳, 拇指 凌阳 JB 凌阳, 拇指 凌

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。