用7段数码管显示9秒倒计时
- 格式:doc
- 大小:299.50 KB
- 文档页数:17
单片机实习题目倒计时器英文题目 COUNTDOWN院系电子工程学院专业电气自动化姓名同组人班级学号指导教师二零一一年 11 月内容提要:通过以前的学习,我们已经对51单片机综合学习系统的使用方方式有所了解与熟悉,这一周我们将进行单片机实习,以进一步熟悉和深入了解单片机。
本次实习中我们组选择实习课题为倒计时器,倒计时器是由单片机为核心的器件组成的一个倒计时系统。
系统显示器是由7位数字型数码管组成,通过单片机控制数码管显示,来分别显示时间值的秒和毫秒.目录1 倒计时器的功能、用途及意义2 AT89C51原理介绍2.1 AT89C51的引脚结构和简介2.2 4X1的7段共阳数码管的内部结构图2.3 与非门74LS04的引脚图和真值表2.4 整体电路设计仿真图3 倒计时器的设计原理、流程图和程序3.1 设计原理3.2 流程图3.3 倒计时器程序4 系统性能及故障分析4.1性能指标及设计分析4.2调试故障的检查与分析5. 所用软件和心得体会5.1系统软件和应用软件列表5.2 心得体会6 参考资料题目:倒计时器1 倒计时器的功能、用途及意义倒计时器是由单片机为核心的器件组成的一个倒计时系统。
系统显示器是由7位数字型数码管组成,分别显示时间值的秒和毫秒. 倒计时器广泛用于各种场合,如篮球比赛,广告牌定时翻转等地方都用到了倒计时。
这次实习所设计的倒计时,是60秒倒计时。
倒计时器通过单片机控制7段数码管显示倒计时的时间,通过按键控制倒计时的开始和停止,当倒计时结束时通过点亮红色发光二极管来提醒倒计时结束。
本组成员安排如下:唐晓虎负责程序的编写,和调试工作;南旭负责电路的焊接;吴浩坤和唐晓虎则负责课程设计报告的编写。
2 AT89C51原理介绍2.1 AT89C51的引脚结构和简介VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P0口的管脚第一次写1时,被定义为高阻输入。
1绪论1.1 单片机的概述现代社会中,尽管PC机的应用已经相当普遍,但是,在控制领域日益追求小而精、轻而薄的自动化控制器、自动化仪器仪表、家电产品等方面,PC机仍有所不相适宜的地方。
而工业控制、仪器仪表、家电产品等市场广阔,要求PC机技术与之相适应。
在这种情况下,单片机应运而生了(也称作微型计算机)。
微型计算机的基本机构是由中央处理器、储存器、和I/O设备构成的。
所谓的单片机是指将微型计算机3个单元的多个分体中的主要功能用1个集成电路芯片来实现,该芯片具有一个微型计算机的基本功能。
这种超大规模集成电路芯片即称为单片微型计算机,通常简称单片机。
单片机具有以下特点:①受集成度限制,片内存储容量较小,一般8位单片机的ROM小于8/16K 字节,RAM小于256字节,但可在外部扩展,通常ROM、RAM可分别扩展至64K字节。
②可靠性好。
芯片本身是按工业测控环境要求设计的,其抗工业噪声干扰优于一般通用CPU;程序指令及常数、表格固化在ROM中不易破坏;许多信号通道均在一个芯片内,故可靠性高。
③易扩展。
片内具有计算机正常运行所必需的部件。
芯片外部有许多供扩展用的三总线及并行、串行输入/输出管脚,很容易构成各种规模的计算机应用系统。
④控制功能强。
为了满足工业控制要求,一般单片机的指令系统中具有极丰富的条件分支转移指令、I/O口的逻辑操作以及位处理功能。
一般说来,单片机的逻辑控制功能及运行速度均高于同一档次的微处理器。
⑤一般单片机内无监控程序或系统通用管理软件,只放置有用户调试好的应用程序。
但近年来也开始出现了在片内固化有BASIC解释程序的单片机。
电子技术和微型计算机的迅速发展,促进微型计算机测量和控制技术的迅速发展和广泛应用,单片机(单片微型计算机)的应用已经渗透到国民经济的各个部门和领域,它起到了越来越重要的作用。
单片机微型计算机就是将中央处理单元、存储器、定时/计数器和多种接口都集成到一块集成电路芯片上的微型计算机。
基于PLC的七段码显示数码管控制【摘要】主要介绍了S7-200型PLC传输指令和移位指令的特点和使用方法,并以七段码显示为例,给出了应用不同类型的指令进行显示和编程的方法。
【关键词】传送指令;移位指令;程序设计;七段显示译码指令生活中,经常能见到电梯楼层显示、抢答器、交通灯剩余时间数码显示以及生产线上的显示系统,可以显示数字或字母,本文利用S7-200系列PLC的指令实现对七段显示数码管的控制。
在西门子S7-200系列PLC中,有多种方法可以实现七段码显示,其中比较常用的有基本指令、传送指令和七段显示译码指令SEG,笔者结合自己的工作经验,对几种控制七段码显示的指令进行比较,供大家学习和参考。
1.传输指令和七段码显示译码指令1.1 传输指令传送指令用于在各个编程元件之间进行数据传送[1]。
西门子S7-200系列PLC的传输指令包括单个传送指令和块传送指令。
单个传送指令助记符为MOV,当传送的数据长度不同时,助记符也不尽相同。
单个传送指令根据传送数据长度可以分为:字节传送指令MOVB,字传送指令MOVW,双字传送指令MOVDW,实数传送指令MOVR,利用传送指令可以在不改变原数据值的情况下将IN中的数据传送到OUT。
块传送指令用来进行一次传送多个数据。
单个传送指令的应用如图1所示图1 传送指令的应用在传送指令中,EN端为允许输入端;ENO端为允许输出端。
当输入I0.1为“1”时,传送指令将MB0中的字节传送给MB1,如果指令正确执行,则输出Q4.0为“1”,否则,如果输入I0.0为“0”,则数据不传送。
一旦传送成功,输出Q4.0将一直保持为1,直到将Q4.0复位。
在为变量赋初始值时,为了保证传送只执行一次,一般MOV方块指令和边缘触发指令联合使用。
1.2 移位指令移位指令是使位组合的字节数据、字数据或双字数据向指定方向移位的指令[2]。
根据移位的数据长度可分为字节型移位、字型移位、双字型移位。
还可以进行循环移位。
PLC课程设计--基于S7-200PLC 的倒计时的控制系统设计学号2010210330《电气控制与可编程控制技术》课程设计(2010级本科)题目:基于S7-200PLC的倒计时的控制系统设计系(部)院:物理与机电工程学院专业:电气工程及其自动化作者姓名:指导教师:职称:完成日期:2013 年 6 月30 日课程设计任务书学生姓名李俊杰学号2010210330专业方向电气工程及其自动化班级电气10(1)题目名称基于S7-200PLC倒计时的控制系统一、设计内容及技术要求:设计一个倒计时的PLC控制系统;1.有启停按钮,按下启动按钮后。
2.开始10秒倒计时,由8组led发光二极管模拟的数码管开始显示:显示的次序是0、9、8、7、6、5、4、3、2、1,9秒后声光报警,再返回初始显示,并循环下去。
3.按下停止按钮,数码管停止。
重新启动时,还从初始显示循环。
二、课程设计说明书撰写要求:1. 完成系统组态或硬件配置;2. 正确合理地进行编程元件的地址分配;3. 画出输入/输出接线图及相关的图纸;4. 设计梯形图控制程序,并模拟调试;5. 完成设计说明书(包括封面、目录、设计任务书、设计思路、硬件设计、软件设计、总结体会、参考文献等)。
三、设计进度周次时间日期内容备注17周周一,二 6.17--6.18 6.18晚7:30 审题理工实验楼501室6.17—7.03 设计17周业余时间18周19周前三天17周周五 6.21 下午3:00 辅导理工实验楼501室18周周五 6.29 下午3:00 辅导理工实验楼501室19周周一,二7.01—7.02 全天调试程序PLC实验室、光机电一体化实验室19周周三7.03 全天答辩19周周五7.05 全天交稿包括文字稿和电子稿指导老师签字:张晓峰摘要 (1)一、绪论 (3)二、PLC的组成与工作原理 (4)2.1 概述 (4)2.2 PLC的主要特点 (5)2.3 PLC的功能与应用 (5)2.4 PLC的性能指标 (7)2.5 S7-200 PLC的概述 (7)三、总体设计 (4)3.1 课程设计内容 (8)3.2 课程设计要求分析 (9)3.3 倒计时控制系统设计 (5)3.3.1总体设计思想 (5)3.3.2设计方案论证 (5)四、 PLC的硬件外部接线图 (11)五、软件设计 (7)5.1 PLC的选择 (7)5.2 I/O地址分配 (7)六、PLC控制系统的程序设计 (8)6.1程序流程图 (8)6.2程序编译 (10)6.3指令如下 (13)6.4分析过程 (13)七、设计总结 (14)八、参考文献 (15)PLC(可编程控制器)作为一种工业控制微型计算机,它以其编程方便、操作简单尤其是它的高可控性等优点,在工业生产过程中得到了广泛的应用。
学号1322010119天津城建大学单片机原理及应用A课程设计说明书利用数码管显示的倒计时控制器设计起止日期:2016年05月30日至2016年6月10日学生姓名杨德虎班级电气(1)班成绩指导教师(签字)控制与机械工程学院2016年6月10日天津城建大学课程设计任务书2015 —2016学年第1学期控制与机械工程学院13电气工程及其自动化专业电气(1)班班级课程设计名称:单片机原理及应用A设计题目:利用数码管显示的倒计时控制器设计完成期限:自2016 年 5 月30 日至2016年 6 月10日共 2 周设计依据、要求及主要内容:一.课程设计的目的1.进一步熟悉和掌握单片机的结构及工作原理。
2.掌握单片机的接口技术及相关外围芯片的外特性,控制方法。
3.通过课程设计,掌握以单片机核心的电路设计的基本方法和技术。
4.通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
5.通过完成一个包括电路设计和程序开发的完整过程,了解开发单片机应用系统的全过程,为今后从事相应开发打下基础。
二.课程设计的基本要求1.认真认识设计的意义,掌握设计工作程序,学会使用工具书和技术参考资料,并培养科学的设计思想和良好的设计作风。
2.提高模型建立和设计能力,学会应用相关设计资料进行设计计算的方法。
3.提高独立分析、解决问题的能力,逐步增强实际应用训练。
4.课程设计的说明书要求简洁、通顺,计算正确,图纸表达内容完整、清楚、规范。
5.课程设计说明书封面格式要求见《天津城建大学课程设计教学工作规范》附表1。
三.课程设计具体要求a) 要求每位同学独立完成设计任务。
b) 原理图及PCB设计1.原理图设计要符合项目的工作原理,连线要正确。
2.图中所使用的元器件要合理选用,电阻、电容等器件的参数要正确标明。
3.原理图要完整,CPU、外围器件、外扩接口、输入/输出装置要一应俱全。
4.设计完成上述原理图对应的PCB图。
c) 程序调计1.根据要求,将总体功能分解成若干个子功能模块,每个功能模块完成一个特定的功能。
《EDA技术及应用》课程设计报告题目:交通灯控制系统的设计院(系):机电与自动化学院专业班级:学生姓名:学号:20142101063指导教师:2017年6月 19日至2016年 6 月 23日武昌首义学院制《EDA技术及应用》课程设计任务书目录1课程设计主要内容与要求 (2)1.1设计目的 (2)1.2控制要求 (2)1.3设计要求 (2)2系统设计 (3)2.1系统原理 (3)2.2 电路功能描述 (3)2.3 交通灯控制器的实现 (3)2.4 软件程序设计 (5)2.5 时钟分频模块 (6)2.6 计数模块 (6)2.7 数码管模块 (7)2.8 LED显示模块 (8)3 软件程序设计 (9)4 硬件电路图、软件仿真图及调试结果 (11)4.1硬件电路 (11)4.2引脚设置 (12)5 软件仿真 (13)6设计过程中的问题及解决办法 (16)7 实验总结和心得体会 (16)8 参考文献 (16)1课程设计主要内容与要求1.1设计目的学习DEA开发软件和QuartusII的使用方法,熟悉可编程逻辑器件的使用。
通过制作来了解交通灯控制系统,交通灯控制系统主要是实现城市十字交叉路口红绿灯的控制。
1.2控制要求本课程设计要求利用VHDL对输入的时钟信号进行分频控制产生秒信号,并结合试验箱上的集成电路及芯片,控制十字路口的红绿黄灯交替点亮和熄灭,并用1位7段数码管显示十字路口两个方向的剩余时间。
①根据交通状态控制十字路口红黄绿灯的点亮熄灭及闪烁等。
②倒计时功能:从9秒开始倒计时,3秒时绿灯变黄并闪烁,红灯不变。
9秒结束时一组黄灯变红,另外一组红灯变绿。
③显示功能:使用1位7段数码管动态显示倒计时时间。
1.3设计要求①设计FPGA的基础工作电路;②设计红绿黄12个灯与FPGA芯片的硬件电路连接;③设计显示部分硬件电路;④使用底层及顶层设计完成电路设计,并作出各文件的仿真;⑤程序下载并进行硬件调试。
2系统设计2.1系统原理根据设计要求和系统所具有的功能,可以分析出,。
一、实训目的本次实训旨在通过实践操作,让学生熟悉数码管的工作原理,掌握单片机控制数码管显示的基本方法,以及倒计时功能的实现。
通过本次实训,学生能够:1. 理解数码管的结构和原理。
2. 掌握单片机与数码管之间的接口连接。
3. 学习编写单片机程序控制数码管显示数字。
4. 实现数码管的倒计时功能。
二、实训器材1. 单片机开发板(如51单片机开发板)2. 数码管(七段或多位)3. 电阻、电容等电子元件4. 连接线5. 编程软件(如Keil uVision)6. 仿真软件(如Proteus)三、实训原理1. 数码管原理:数码管是一种用于显示数字和字母的显示器,由多个发光二极管(LED)组成。
常见的数码管有七段数码管和多位数码管。
七段数码管由七个LED 组成,可以显示0-9的数字以及部分字母和符号。
多位数码管由多个七段数码管组成,可以显示多位数字。
2. 单片机控制数码管:单片机通过IO口输出高低电平信号,控制数码管的各个LED的亮灭,从而显示相应的数字或符号。
通过编写程序,单片机可以控制数码管显示不同的数字。
3. 倒计时功能:倒计时功能通过单片机定时器实现。
单片机定时器可以定时产生中断,每次中断执行一次减法操作,直到倒计时结束。
四、实训步骤1. 搭建电路:根据电路图连接单片机开发板、数码管、电阻等元件。
2. 编写程序:- 初始化IO口:设置单片机IO口为输出模式,用于控制数码管。
- 初始化定时器:设置定时器工作模式,使定时器定时产生中断。
- 中断服务程序:在中断服务程序中,实现倒计时功能。
每次中断,数码管显示的数字减1,直到倒计时结束。
3. 编译程序:使用Keil uVision等编程软件编译程序。
4. 下载程序:将编译好的程序下载到单片机开发板。
5. 仿真测试:使用Proteus等仿真软件进行测试,确保程序正常运行。
6. 实物测试:将单片机开发板与数码管连接,进行实物测试。
五、实训结果与分析1. 结果:通过本次实训,成功实现了数码管的倒计时功能。
1 设计内容及目标1.1设计题目用七段LED数码管显示倒计时1.2设计要求(1)用8255控制七段LED数码管。
(2)可选:用8254定时器显示时间。
(3)可选:可通过开关控制暂停计时、继续计时或时间清零。
1.3设计目的通过本学期对微机原理的学习,掌握的知识还停留在理论的上。
但是这是一门实践性较强的课程,让学生在学完该课程之后,进行一次课程设计,使学生将课堂所学的知识和实践有机结合起来,初步掌握计算机应用系统设计的步骤和接口设计的方法,提高分析和解决实际问题的能力。
通过设计实践,培养学生查阅专业资料,工具书或参考书,了解有关工业标准,掌握现代设计手段和软件工具,并能以图纸和说明书表达设计思想和结果的能力。
通过设计,不但要培养和提高学生解决工程具体问题,动脑动手的技术工作能力,而且还要逐步建立科学正确的设计和科研思想,培养良好的设计习惯,牢固树立实事求是和严肃认真的工作态度。
2 设计原理2.1设计思路本次课程设计的题目是用七段LED数码管来显示倒计时。
在这个设计中既要用到8255芯片,又要用到8254芯片对脉冲信号进行记数。
设定初始值,每隔一秒,秒钟数字减一,每过60秒分钟个位减一。
根据需要,需选择的芯片有8255、8259和8254。
2.2设计环境与器材(1)PC微机一台。
用于对程序的编写、编译和测试等,同时还需要对实验设备进行控制,提供整个程序的运行平台,并且收集和释放硬件信号,实现程序功能。
(2)微机原理实验箱一台。
此设备必须能提供8254、8255、8259和数码管等必要芯片,并且能通过接受PC机传来的信息,显示出相应的功能,以支持电子时钟的实现。
(3)导线若干条。
用于电路和芯片之间的连接。
2.3电路原理和主要芯片2.3.1电路工作原理首先利用程序硬性规定分、秒的起始时间为9。
然后通过8254计时器分频,并将以分得的频率接通8259中断控制器,进而通过CPU响应可屏蔽中断达到按秒计时的效果。
具体做法是将四个七段管显示器接到两片可并行接口8255芯片上,以此来控制七段管显示器的位操作以及段操作。
并为之在数据段开辟一处空间,专门存放将要显示的数位代码。
8254计时器将由PC机给定的频率加以分频,得到的新频率加到8259中断控制器的中断请求输入端。
主程序为此可屏蔽中断设置专门的中断向量码。
CPU获取此中断向量码后转向待需解决的程序进行操作。
而这个程序便是整个主程序的心脏。
通过它将使倒计时的显示时间以秒为减位,达到秒、分的减少。
2.3.2 8254主要功能8254 是Intel 公司生产的可编程间隔定时器。
是8253 的改进型,比8253 具有更优良的性能。
8254 具有以下基本功能:●有3 个独立的16 位计数器;●每个计数器可按二进制或十进制(BCD)计数;每个计数器可编程工作于6 种不同工作方式;每个计数器允许的最高计数频率为10MHz;●8254 有读回命令,除了可以读出当前计数单元的内容外,还可以读出状态寄存器的内容。
●计数脉冲可以是有规律的时钟信号,也可以是随机信号。
计数初值公式为n=fCLKi ÷fOUTi,其中fCLKi是输入时钟脉冲的频率,fOUTi是输出波形的频率。
图1 内部结构框图和引脚图上图是8254 的内部结构框图和引脚图,它是由与CPU 的接口、内部控制电路和三个计数器组成。
8254 的工作方式如下述:(1) 方式0 :计数到0 结束输出正跃变信号方式。
(2) 方式1:硬件可重触发单稳方式。
(3) 方式2 :频率发生器方式。
(4) 方式3 :方波发生器。
(5) 方式4 :软件触发选通方式。
(6) 方式5 :硬件触发选通方式。
8254 的控制字有两个:一个用来设置计数器的工作方式,称为方式控制字;另一个用来设置读回命令,称为读回控制字。
这两个控制字共用一个地址,由标识位来区分。
当读回控制字的D4 位为0 时,由该读回控制字D1~D2 位指定的计数器的状态寄存器内容将被锁存到状态寄存器中。
状态字格式如图2.6所示:图2 8254状态字格式2.3.3 8255的主要功能8255 可编程外围接口芯片是Intel 公司生产的通用并行I/O 接口芯片,它具有A、B、C 三个并行接口,并行接口是以数据的字节为单位与I/O 设备或被控制对象之间传递信息。
CPU 和接口之间的数据传送总是并行的,即可以同时传递8 位、16 位、32 位等。
用+5V 单电源供电,能在以下三种方式下工作:方式0--基本输入/出方式、方式1--选通输入/出方式、方式2--双向选通工作方式。
8255的内部结构及引脚如图2.1所示:图3 内部结构及引脚如图2.1所示,D0~D7为双向数据信号线,用来传送数据和控制字。
为读信号线,与其他信号线一起实现对8255接口的读操作。
通常接系统总线的信号。
为写信号线,与其他信号一起实现对8255的写操作,通常接系统总线的。
为片选信号线,当它为低电平时,才能选中该8255芯片,也才能对8255进行操作。
A0、A1为口地址选择信号线。
本次设计使其分别与系统总线的XA1、XA2相连,它们的不同编码可分别寻址3个口和一个控制寄存器,具体规定如下:A1A0选择0 0 A口0 1 B口1 0 C口1 1 控制寄存器RESET为复位输入信号。
此端上的高电平可使8255复位。
复位后,8255的A口、B口和C口均被定义为输入状态。
PA0~PA7为A口的8条输入输出信号线,该口的这8条线是工作于输入、输出还是双向(输入、输出)方式,可由软件编程来决定。
PB0~PB7为B口的8条输入输出信号线,利用软件编程可指定这8条线是输入还是输出。
2.3.4 8259主要功能终端控制器8259是Intel 公司专为控制优先级中断而设计开发的芯片。
它将中断源优先级排队、辨别中断源以及提供中断矢量的电路集于一片中,因此无需附加任何电路,只需对8259A 进行编程,就可以管理8 级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来设定。
同时,在不需增加其他电路的情况下,通过多片8259A 的级连,能构成多达64 级的矢量中断系统。
它的管理功能包括:1)记录各级中断源请求,2)判别优先级,确定是否响应和响应哪一级中断,3)响应中断时,向CPU 传送中断类型号。
8259A 的内部结构和引脚如图2.3所示:图4 内部结构和引脚8259的命令共有7 个,一类是初始化命令字,另一类是操作命令。
8259A 的编程就是根据应用需要将初始化命令字ICW1-ICW4 和操作命令字OCW1- OCW3 分别写入初始化命令寄存器组和操作命令寄存器组。
OCW1-OCW3 各命令字格式如图2.4所示,其中OCW1 用于设置中断屏蔽操作字,OCW2 用于设置优先级循环方式和中断结束方式的操作命令字,OCW3 用于设置和撤销特殊屏蔽方式、设置中断查询方式以及设置对8259 内部寄存器的读出命令。
图5OCW1-OCW3 各命令字格3设计步骤3.1实验接线图系统的连线图主要由五个部分构成。
8259中断控制器、8255并口控制器、8254定时计数器、键盘及数码管显示单元、开关及LED显示单元构成。
如下图所示:芯片8254 系统总线芯片8255 LED数码管图6 实验接线图3.2主程序流程图的设计主程序的流程图是对整个程序的逻辑的图象表示。
首先是设置8254、8255、8259的各个端口地址。
接着初始化各个芯片,开始计时,并通过8259中断控制时间的正确显示。
在整个过程中都在检测是否有铵键响应。
有则停止,没有则返回继续执行。
图7 主程序流程图3.3子程序流程图图8 子程序流程图3.4倒计时源程序的设计MY8255_A EQU 0600HMY8255_B EQU 0602HMY8255_C EQU 0604HMY8255_MODE EQU 0606HA8254 EQU 06C0HB8254 EQU 06C2HC8254 EQU 06C4HCON8254 EQU 06C6HSSTACK SEGMENT STACKDW 32 DUP(?)SSTACK ENDSDATA SEGMENTDTABLE DB 6FH,7FHDB 07H,7DH,6DH,66H,4FH,5BH,06H,3FHMSEC DW 0SEC DB 0MIN DB 0DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:SSTACKSTART: PUSH DSMOV AX, 0000HMOV DS, AXMOV AX, OFFSET MIR7 ;取中断入口地址MOV SI, 003CH ;中断矢量地址MOV [SI], AX ;填IRQ7的偏移矢量确定地址 MOV AX, CS ;段地址MOV SI, 003EHMOV [SI], AX ;填IRQ7的段地址矢量CLIPOP DS ;初始化主片8255MOV DX,MY8255_MODEMOV AL,81HOUT DX,AL ;初始化主片8254MOV DX,CON8254MOV AL,36HOUT DX,ALMOV DX,A8254MOV AL,0E8HOUT DX,ALMOV AL,03HOUT DX,AL ;初始化主片8259OUT 20H, AL ;ICW1MOV AL, 08HOUT 21H, AL ;ICW2MOV AL, 04HOUT 21H, AL ;ICW3MOV AL, 01HOUT 21H, AL ;ICW4MOV AL, 6FH ;OCW1OUT 21H, ALSTIMOV AX,DATAMOV DS,AXMOV SI,3000HMOV AL,00HMOV [SI],ALMOV [SI+1],ALMOV [SI+2],ALMOV [SI+3],ALMOV DI,3003HBEGIN: CALL DISCALL CLEARJMP BEGINMIR7: STIPUSH AXPUSH SIMOV AX,MSECINC AXMOV MSEC,AXCMP AX,1000JB MRETMOV AX,0MOV MSEC,AXMOV AL,SECADD AL,1DAAMOV SEC,ALCMP AL,60HJB MTODISMOV AL,0MOV SEC,ALMOV AL,MINADD AL,1DAAMTODIS: MOV AL,SECMOV AH,ALMOV SI,3000HAND AL,0FHMOV [SI],ALROR AH,1ROR AH,1ROR AH,1ROR AH,1AND AH,0FHMOV [SI+1],AHMOV AL,MINMOV AH,ALAND AL,0FHMOV [SI+2],ALROR AH,1ROR AH,1ROR AH,1ROR AH,1AND AH,0FHMOV [SI+3],AHMRET: MOV AL, 20HOUT 20H, AL ;中断结束命令POP SIPOP AXIRETCLEAR: MOV DX,MY8255_BMOV AL,00HOUT DX,ALRETDIS: PUSH AXMOV SI,3000HMOV DL,0F7HMOV AL,DLAGAIN: PUSH DXMOV DX,MY8255_AOUT DX,ALMOV AL,[SI]MOV BX,OFFSET DTABLEAND AX,00FFHADD BX,AXMOV AL,[BX]MOV DX,MY8255_BOUT DX,ALCALL DALLYINC SIPOP DXMOV AL,DLTEST AL,01HJZ OUT1ROR AL,1MOV DL,ALJMP AGAINOUT1: POP AXRETDALLY : PUSH CXMOV CX,000FH T1: MOV AX,002FHT2: DEC AXJNZ T2LOOP T1POP CXRETCODE ENDSEND START3.5源程序的调试过程经过小组成员共同努力编写完源程序,我们开始了上机调试过程,发现了许多细节上的错误,还有许多程序的用途和我们设计的不同。