汇编语言八路抢答器设计
八路智力抢答器课程设计

数字抢答器电路设计一、设计题目八路竞赛抢答器二、课程设计目的1、培养数字电路的设计能力。
2、掌握抢答器电脑设计方法。
三、设计内容和要求3.1 设计内容⒈设计一个智力竞赛抢答器,可同时供8名选手或8个代表队参加比赛,他们的编号分别是1、2、3、4、5、6、7、8,各用一个抢答按钮,按钮的编号与选手的编号相对应,分别是S0、S1、S2、S3、S4、S5、S6、S7。
⒉给节目主持人设置一个控制开关,用来控制系统的清零(编号显示数码管灭灯)和抢答的开始。
⒊抢答器具有数据锁存和显示的功能。
抢答开始后,若有选手按动抢答按钮,编号立即锁存,并在LED数码管上显示出选手的编号,同时蜂鸣器给出音响提示。
此外,要封锁输入电路,禁止其他选手抢答。
优先抢答选手的编号一直保持到主持人将系统清零为止。
4.用中小规模集成电路组成智力竞赛抢答器电路,画出各单元电路图和总体逻辑框图,正确描述各单元功能,合理选用电路器件,画出完整的电路设计图以及写出设计总结报告3.2 设计要求⒈抢答器具有定时抢答的功能,且一次抢答的时间可以由主持人设定(如30s)。
当节目主持人启动“开始”键后,要求定时器立即减计时,并用显示器显示,同时蜂鸣器发出声响。
⒉参赛选手在设定的时间内抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答时刻的时间,并保持到主持人将系统清零为止。
⒊如果定时抢答的时间已到,却没有选手抢答时,本次抢答无效,系统短暂报警,并封锁输入电路,禁止选手超时后抢答,时间显示器上显示00。
四、设计总体框如图(一)所示为八路智力竞赛抢答器的总体方框图。
其工作原理如下:抢答器系统原理框图如上所示。
它由主体电路和扩展电路两部分组成,主体电路完成基本抢答后,选手按动抢答键时,能显示选手的编号,同时能封锁输入电路,禁止其他选手抢答,扩展电路完成定时抢答的功能五、单元电路设计方案和原理说明⒈抢答器电路设计其原理说明:(1)、抢答电路的功能有两个:一是能分辨出选手按键的先后,并锁存优先抢答者的编号,供译码显示译码电路用;二是要使其它选手按键操作无效。
课程设计 八路抢答器的设计

电子技术课程设计2007-2008-1系别班级姓名学号一、题目八路抢答器:设置8个抢答按钮,另设置1个主持人按钮来清零。
主持人清零后,首先抢答人的号码显示出来并保持,直到主持人再次清零,可设置定时抢答,超出规定时间为无效抢答,只要有人抢答,就发出声、光指示。
二、主要技术指标该抢答器具有倒计时、抢答、报警的功能。
三、方案论证及选择(一)、设计要求1、智力竞赛抢答器可同时功8名选手或8个代表队参加比赛他们的编号分别是0、1、2、3、4、5、6、7,各用一个抢答按钮,按钮的编号与选手的编号相对应,分别是S0、S1、S2、S3、S4、S5、S6、S7;2、给节目支持人设置一个控制开关,用来控制系统的清零和抢答的开始;3、抢答器具有数据锁存和显示功能,抢答开始后,若有选手按动抢答按钮,编号立即锁存,并在LED数码管上显示出选手的编号,同时扬声器给出音响提示,此外,要锁存输入电路,禁止其他选手抢答,优先抢答的选手编号一直保持到主持人将系统清零为止;4、抢答器具有定时抢答的功能,且一次抢答的时间可由主持人设定,当节目主持人启动“开始”键后,要求定时器立即减计时,并用显示器显示,同时扬声器发出短暂的声响,声响持续时间0.5s左右;5、参赛选手再设定的时间内抢答有效,定时器停止工作,显示器上显示选手的编号和抢答时刻的时间,并保持到主持人将系统清零;6、如果定时抢答的时间已到,却没有选手抢答时,本次抢答无效,系统短暂报警,并封锁输入电路,禁止选手超时抢答,时间显示器上显示00。
(二)、电路设计根据设计要求,可以把电路分为三块:定时电路、抢答电路和报警电路。
1、设计要点定时抢答器的总体框图如图a所示,其工作过程是:接通电源时节目主持人将开关置于“清零”位置,抢答器处于静止工作状态,编号显示器灭灯,定时显示器显示设定的时间,当节目主持人宣布抢答题目后,说一声“抢答开始”,同时将控制开关拨到“开始”位置,扬声器给出声响提示,抢答器处于工作状态,定时器倒计时。
8路抢答器设计八路智力竞赛抢答器

1 前言1.1主要功能介绍(1)抢答器最多可供8名选手参赛,编号为1~8号,各队分别用一个按钮(分别为S1~S8)控制,并设置一个系统清零和抢答控制开关S,该开关由主持人控制。
(2)抢答器具有数据锁存功能,并将锁存数据用LED数码管显示出来,同时蜂鸣器发出间歇式声响(持续时间为0.5秒),主持人清零后,声音提示停止。
(3)开关S作为清零及抢答控制开关(由主持人控制),当开关S被按下时抢答电路清零,松开后则允许抢答。
输入抢答信号由抢答按钮开关S1~S8实现。
(4)有抢答信号输入(开关S1~S8中的任意一个开关被按下)时,并显示出相对应的组别。
此时再按其他任何一个抢答器开关均无效,指示灯依旧“保持” 第一个开关按下时所对应的状态不变。
1.2扩展功能介绍(1)抢答器具有定时抢答的功能,且一次抢答的时间可以由主持人设定(如30秒)。
当节目主持人启动“开始”键后,要求定时器立即减计时,并用显示器显示,同时扬声器发出短暂的声响,声响持续时间0.5秒左右。
(2)参加选手在设定的时间抢答,抢答有效,定时器停止工作,显示上显示选手的编号和抢答时刻的时间,并保持到主持人将系统清零为止。
(3)如果定时抢答的时间已到,却没有选手抢答时,本次抢答无效,系统短暂报警,并封锁输入电路,禁止选手超时后抢答,时间显示器上显示00。
(4)当选手抢答完后,主持人可根据相关题的加减分对选手进行加分或减分。
2总体方案设计此次课程设计我们有两套方案一是硬件部分主要由单片机、74LS373锁存器、LED显示器、声音报警器和其它基本外围电子电路组成软件部分则采用51系列单片机通用C语言精心设计编写。
它所具有的功能包括:抢答器同时供8名选手或8个代表队比赛,当开关S按下,抢答器发出0.5秒的报警声系统开始进行计时,选手可进行抢答,当计时30秒之后若没人抢答,则系统发出警报并禁止抢答,定时显示数码管上显示00字样,之后等待开关S按下,系统复位;若在30秒有选手进行抢答,此时扬声器会发出3秒时间的警报,同时在定时显示数码管上显示选手抢答时间(以秒为最小单位),编号显示数码管上显示抢答选手编号,显示器上的状态直到开关S按下将系统复位为止;系统复位时所有的数码管不显示任何的数据。
八路抢答器电路设计1

八路抢答器电路设计1第一篇:八路抢答器电路设计1八路定时抢答器的设计一、设计题目八路智力竞赛抢答器二﹑设计要求1.抢答器同时供8名选手或8个代表队比赛,分别用8个按键S0 ~ S7表示。
2.设置一个系统清除和抢答控制开关S,该开关由主持人控制。
3.抢答器具有锁存与显示功能。
选手按动按钮,锁存相应的编号,并在LED数码管上显示,同时扬声器发出报警声响提示。
选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。
三﹑设计方案我们组在经过一番讨论之后,决定在完成基本的抢答功能的前提下对其进行进一步的功能扩展。
加入了定时和报警的功能,这样我们的电路就由抢答电路﹑定时电路﹑报警电路和最重要的时序控制电路四部分组成,抢答器就具有了其他的功能。
例如由主持人设定抢答时间(定时电路),定时器倒计时,选手在规定时间内抢答,按键有效则定时器停止工作显示器显示选手编号并阻止其后选手的编号(抢答电路)。
超过抢答时间无人抢答则报警器短暂发声(报警电路),并锁存电路。
拓展之后的逻辑框图组成如下:四﹑各部分具体设计及原理分析1﹑主体部分抢答电路参考电路如图一所示。
该电路完成两个功能:一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号;二是禁止其他选手按键操作无效。
工作过程:开关S置于“清除”端时,RS触发器的端均为0,4个触发器输出置0,使74LS148的=0,使之处于工作状态。
当开关S置于“开始”时,抢答器处于等待工作状态,当有选手按下按键时(如按下S5),74LS148的输出经RS锁存后,1Q=1, =1,74LS48处于工作状态,4Q3Q2Q=101,经译码显示为“5”。
此外,1Q=1,使74LS148 =1,处于禁止状态,封锁其他按键的输入。
当按键松开即按下时,74LS148的此时由于仍为1Q=1,使=1,所以74LS148仍处于禁止状态,确保不会出二次按键时输入信号,保证了抢答者的优先性。
汇编语言八路抢答器设计

微机原理与接口技术课程设计报告2015-2016学年第二学期设计题目:_______小组成员:所学专业:指导教师: _______完成时间: ___目录一、课程设计目的 (4)二、课程设计要求 (4)三、系统功能 (4)四、总体设计 (4)1.基本工作原理 (4)1.1可编程并行接口接口芯片8255A控制字要求 (4)1.2可编程定时器/计数器8253控制字要求 (5)2.硬件总体设计 (5)2.1系统总成方案 (5)2.2内存单元编址 (5)3.键盘、扬声器及显示功能的定义 (5)4.原理图 (5)4.1 硬件原理框图 (6)4.2 原理连线图 (6)5 软件总体设计 (6)五、硬件设计............................ 错误!未定义书签。
六、软件设计 (8)七、调试过程 (21)八、系统操作说明 (21)九、总结 (22)十、参考文献 (22)八路抢答器设计一、设计目的1、掌握微机系统的开发步骤;2、掌握抢答器控制编程方法和芯片8255、8253的逻辑功能、键盘中断及使用方法和数码管的用法;3、掌握一定的汇编语言知识,培养自己的动手操作能力。
4、学习程序设计的基本思路和方法。
因此,本次设计要求对微机原理的理论知识,8255A,8253,键盘显示区的工作方式、工作原理熟练掌握。
二、设计要求当按开始键,绿灯亮后,选手抢答,1-8号选手中先按下按键者,LED数码管显示其选手号码(后按下无效),并进行声光报警(黄灯亮)提示。
当按开始键未按下时,如果有选手抢答,LED数码管显示其选手号码,并进行声光报警(红灯亮)提示。
三、系统功能一个具有8路抢答的抢答器,利用并行接口和开关键。
键盘上数字键1--8代表抢答按钮,当某个逻辑开关闭合时(开始键按下未按起时),相当于抢答按钮按下,此时在七段数码管上将其号码显示出来,并使喇叭响一声(或者以发光二极管代替)。
四、总体设计1. 基本工作原理当按开始键按下时,绿灯亮后,选手才可抢答,否则违规。
八路竞赛抢答器的设计方案

八路竞赛抢答器的设计方案一,设计题目、目的及要求1.1设计题目8路抢答器的设计1.2设计目的1、熟悉74ls148、74ls28、74ls29的功能和应用掌握其工作原理,并熟练运用它们。
2、熟悉面包板的使用。
3、掌握数字抢答器的工作原理以及制作方法。
4、增强动手能力,把握严谨的工作态度。
5、熟练运用所学习的模电及数电知识。
1.3设计要求1、八个选手或代表队参加比赛,编号0,1,2,3,4,5,6,7,各用一个抢答按钮,其编号与参赛者的号码一致。
此外,一个按钮给主持人用来清零;2、抢答器具有数据锁存功能,并将所锁存的数据用数码管显示出来;3、数码管不显示后动作选手编号,只显示先动作选手编号,并保持到主持人清零为止;4、选手只有在主持人说开始抢答后才能开始抢答拨动开关。
5、并且抢答结束后裁判没有清零,选手不得动自己的开关。
二、方案设计2.1、总体设计思路按照题目的要求,经过自己的思考与分析以后,将思路确定。
要满足题目所说的,要能完成抢答功能,当某一个选手输入后,屏幕上能显示出该选手的号码,同时通过锁存能限制其他选手的抢答,并且自己抢答后,由于锁存效果也不能反悔。
当抢答开始时,主持人未说开始抢答时,裁判的开关置于清零端,由于此时数码管处于灭灯状态,所以无论选手如何操作,数码管也不会有数据显示,由此想到用裁判来控制清零端,当裁判清零时,即可清除数码管上的数字,并且由于开始时屏幕上不能有显示,所以当裁判置于开始端的时候,数码管译码器的灭灯输入端依然是灭灯输入,只有当选手触发时才能改变电平,输入内容。
另外锁存端必然是反馈锁存,所以要使用后面芯片的信号来反馈给前面的芯片的使能端以控制其使能输入,由此阻断其他选手的输入信号。
锁存后如果没有其他信号去解锁,系统就处于禁止工作状态不能再工作,所以想到要用裁判清零来控制使能端,在消除数码管显示的同时来解锁使能端,让电路恢复其功能。
2.2、方案设计2.2.1 设计方案1(个人方案)根据以上思路,决定使用以下流程图作为本次课程设计的方案,基本能实现抢答器的功能,可以完成说明书上的要求。
八路数字抢答器的课程设计

八路数字抢答器一、技术指标1、设计任务(1)设置八个抢答按钮,另设一个主持人按钮用来清零,主持人清零后,首先抢答人的号码显示出来并保持到主持人再次清零。
(2)只要有按钮按下,电路锁存,其他按钮功能失效。
2、设计要求(1)抢答器同时供8名选手或8个代表队比赛,分别用8个按钮S0~S7表示。
(2)设置一个系统清除和抢答控制开关S,该开关由主持人控制。
(3)抢答器具有锁存与显示功能。
即选手按动按钮,锁存相应的编号,并在LED数码管上显示,同时扬声器发出报警声响提示。
选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。
二、方案论证与设计优先编码器将抢答者选出,然后送入锁存器,锁存器输出经过译码显示,显示出抢答者的编号。
控制电路将编码器置于禁止状态,不准许其他竞赛者抢答。
三、工作原理图(一)所示的数字抢答器的工作过程是:接通电源后,主持人先按下清零键,此时将显示器清零,当主持人读完题目发出“抢答开始”的号令的同时按下定时控制电路中的按键,此时定时电路开始计时等待选手抢答,在此过程中,当有选手抢答时编码器通过锁存器立即接收到该信号并迅速返回给锁存控制电路一个控制信号,锁存控制单元立即产生并送给锁存器一个锁存信号使得其他七路的按键信息不能被接受。
与此同时,编码器又将输出信号传给译码器再通过数码管显示出抢答者的号码,在此过程中编码器还向控制单元发出信号以作出响应的声光指示。
按图一我们把系统分成锁存控制显示模块、定时模块、声光指示模块共三大模块。
此三模块中最关键的部分就是锁存控制模块,解决该模块的方案有多种,在此只针对该模块进行了方案的选择及论证。
图一数字抢答器框图四、单元电路设计整个电路主要包括锁存控制抢答电路、数码显示电路、定时电路、音频产生电路、声光指示电路五部分组成。
1、锁存控制抢答电路的设计当有一个按键事先按下时,我们必须还要考虑到防止其他按键与之产生冲突,因此在有按键事先按下的情况下必须使得其他按键无效。
8路抢答器设计(含完整图)

数字电路课程设计报告8路数字抢答器1.概述抢答器同时供8名选手或8个代表队比赛,分别用8个按钮S0 ~ S7表示。
另外设置系统清除开关一个,该开关由主持人控制。
抢答器具有锁存与显示功能。
即选手按动按钮,锁存相应的编号,扬声器发出声响提示,并在七段数码管上显示选手号码。
选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清零为止。
当主持人按下清除键后,参赛选手可以进行抢答,同时倒计时电路开始倒计时,抢答有效时,红灯亮,倒计时停止,显示器上显示选手的编号,并保持到主持人将系统清零为止。
2、8路数字抢答器各主要芯片介绍2.1、74LS14874LS148是一个8线—3线优先编码器。
74LS148外部管脚图、真值表如图所示:图一 74ls148 真值表由表不难看出,在0=S 电路正常工作状态下,允许70~I I 当中同时有几个输入端同时为低电平,即有编码输入信号。
7I 的优先权最高,0I 的优先权最低。
当07=I 时,无论其它输入端有无输入信号(表中以x 表示),输出端只给出7I 的编码,即000012=Y Y Y ,当74LS148的功能表输 入输 出S0I 1I 2I 3I 4I 5I 6I 7I2Y 1Y 0Y S Y EX Y1 0 0 0 0 0 0 0 0 0 x x x x x x x x 1 1 1 1 1 1 1 1 x x x x x x x 0 x x x x x x 0 1 x x x x x 0 1 1 x x x x 0 1 1 1 x x x 0 1 1 1 1 x x 0 1 1 1 1 1 x 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 0U CC Y EX Y S I 3 I 2 I 1 I 0 Y 0I 4I 5I 6I7S Y 2Y 1GND 图2 74LS148管脚图16 9 74LS148 1 80167==I I 、时,无论其它输入端有无输入信号,只对6I 编码,即输出为001012=Y Y Y 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机原理与接口技术课程设计报告2015-2016学年第二学期设计题目:_______小组成员:所学专业:指导教师: _______完成时间: ___目录一、课程设计目的 (4)二、课程设计要求 (4)三、系统功能 (4)四、总体设计 (4)1.基本工作原理 (4)1.1可编程并行接口接口芯片8255A控制字要求 (4)1.2可编程定时器/计数器8253控制字要求 (5)2.硬件总体设计 (5)2.1系统总成方案 (5)2.2内存单元编址 (5)3.键盘、扬声器及显示功能的定义 (5)4.原理图 (5)4.1 硬件原理框图 (6)4.2 原理连线图 (6)5 软件总体设计 (6)五、硬件设计............................. 错误!未定义书签。
六、软件设计 (8)七、调试过程 (21)八、系统操作说明 (21)九、总结 (22)十、参考文献 (22)八路抢答器设计一、设计目的1、掌握微机系统的开发步骤;2、掌握抢答器控制编程方法和芯片8255、8253的逻辑功能、键盘中断及使用方法和数码管的用法;3、掌握一定的汇编语言知识,培养自己的动手操作能力。
4、学习程序设计的基本思路和方法。
因此,本次设计要求对微机原理的理论知识,8255A,8253,键盘显示区的工作方式、工作原理熟练掌握。
二、设计要求当按开始键,绿灯亮后,选手抢答,1-8号选手中先按下按键者,LED数码管显示其选手号码(后按下无效),并进行声光报警(黄灯亮)提示。
当按开始键未按下时,如果有选手抢答,LED数码管显示其选手号码,并进行声光报警(红灯亮)提示。
三、系统功能一个具有8路抢答的抢答器,利用并行接口和开关键。
键盘上数字键1--8代表抢答按钮,当某个逻辑开关闭合时(开始键按下未按起时),相当于抢答按钮按下,此时在七段数码管上将其号码显示出来,并使喇叭响一声(或者以发光二极管代替)。
四、总体设计1. 基本工作原理当按开始键按下时,绿灯亮后,选手才可抢答,否则违规。
若抢答成功,LED 显示器显示选手号码,黄灯亮,扬声器鸣叫;若抢答违规(未按下开始键),LED 显示器显示违规选手号码,红灯亮,扬声器报警。
1.1可编程并行接口接口芯片8255A控制字要求(1)、B口工作在方式0,做为输出端口,经驱动器1连接LED显示器(PB7~PB0依次对应连接LED显示器的dp、g、f、e、d、c、b、a七段数码管管脚);(2)、C口也必须工作在方式0,高4 位做输入端口(本次设计中只用PC4、PC5,分别用于连接复位键和开始键),低4位做输出端口(PC3~PC0,经驱动器2后PC1、PC2、PC3分别用于连接黄、红、绿三个发光二极管,PC0连接到8253的GATE1端,以控制方式1的计数)。
1.2可编程定时器/计数器8253控制字要求(1)、方式0:操作类型为先读写低字节再读写高字节,工作在方式3即方波发生器,计数格式为BCD码,计数初值为0。
(2)、方式1:操作类型为先读写低字节再读写高字节,工作在方式1即可重触发的单稳态触发器,计数格式为BCD码,计数初值为0。
(3)、方式2:操作类型为先读写低字节再读写高字节,工作在方式3即方波发生器,计数格式为BCD码,计数初值为0。
2.硬件总体设计2.1系统总成方案该竞赛抢答器所要器件:可编程并行接口接口芯片8255、可编程定时器/计数器8253,三个一样的驱动器,黄、红、绿三个发光二极管,十三个电阻,一个8输入与非门,一个非门,一个扬声器,一个LED显示器,10个按键。
2.2内存单元编址(1)可编程并行接口接口芯片8255A的端口地址为60H、61H、62H、63H(2)可编程定时器/计数器8253的端口地址为40H、41H、42H、43H(3)特殊键中断号为2A---36,对应地址为00A8---00DB本实验用到数字键1--8,对应的ASCII为31H---38HLED显示器1--8对应的十六进制是:06H,5BH,4FH,66H,6DH,7CH,07H,7FH3.键盘、扬声器及显示功能的定义一个开始键一个复位键,另外8个数字键用做8位选手的抢答按键。
扬声器用与黄、红、绿三个发光二极管配合使用,黄灯亮扬声器鸣叫表示抢答成功,红灯亮扬声报警表示抢答违规报警,绿灯亮扬声器不鸣则表示主持人已按下开始键。
LED 显示器显示的内容与选手号对应,抢答成功或违规都要显示。
4.原理图4.1硬件原理框图图14.2 原理连线图按键设置82558 2 5 5 8086 CPU82538 2 5 4LED 灯 LED 显 示 模扬声器声光报警键盘输入4.3软件总体设计主程序流程图:图3五、硬件设计1.可编程并行接口接口芯片8255A的工作方式8255A具有三个独立的输入/输出端口,每个端口的并行数据宽度为8位。
三个端口分别为A端口,B端口,C端口,可分别与不同的外设进行数据交换,也可联合使用,在中断方式下实现CPU与外设间的数据传递。
8255A提供方式0,方式1,方式2三种工作方式供选择。
2.可编程定时器/计数器8253的工作方式(1)方式0:操作类型为先读写低字节再读写高字节,工作在方式3即方波发生器,计数格式为BCD码,计数初值为0。
(2)方式1:操作类型为先读写低字节再读写高字节,工作在方式1即可重触发的单稳态触发器,计数格式为BCD码,计数初值为0。
(3)方式2:操作类型为先读写低字节再读写高字节,工作在方式3即方波发生器,计数格式为BCD码,计数初值为0。
六、软件设计DATA SEGMENTBZ DB 00HDATA ENDSCODE SEGMENTASSUME DS:DATA,CS:CODESTART: MOV AX,DATAMOV DS,AX;8255A初始化MOV AL,88H ;置8255A工作方式OUT 63H,ALXOR AL,AL ;B口、C口初始化OUT 61H,ALOUT 62H,AL;8253初始化MOV AL,37H ;置8253方式0控制字OUT 43H,ALMOV AL,00H ;置8253方式0计数初值为4000 OUT 40H,ALMOV AL,40HOUT 40H,ALMOV AL,73H ;置8253 方式1控制字OUT 43H,ALMOV AL,00H ;置8253方式1计数初值为3000OUT 41H,ALMOV AL,30HOUT 41H,ALMOV AL,0B7H ;置8253方式2控制字OUT 43H,ALMOV AL,00HOUT 42H,ALMOV AL,00H ;置8253方式2计数初值为0 OUT 42H,AL;中断设置MOV AX,0000HMOV DS,AX;MOV BX,0457HMOV AL,31HMOV CX,8LOP4:MOV [BX],ALINC BXINC ALLOOP LOP4MOV AX, OFFSET KKK1 MOV [00A8],AXMOV AX,0000HMOV [00AA],AXMOV AX, OFFSET KKK2 MOV [00AC],AXMOV AX,0000HMOV [00AE],AXMOV AX, OFFSET KKK3 MOV [00B0],AXMOV AX,0000HMOV [00B2],AXMOV AX, OFFSET KKK4 MOV [00B4],AXMOV AX,0000HMOV [00B6],AXMOV AX, OFFSET KKK5MOV [00B8],AXMOV AX,0000HMOV [00BA],AXMOV AX, OFFSET KKK6MOV [00BC],AXMOV AX,0000HMOV [00BE],AXMOV AX, OFFSET KKK7MOV [00C0],AXMOV AX,0000HMOV [00C2],AXMOV AX, OFFSET KKK8MOV [00C4],AXMOV AX,0000HMOV [00C6],AXSTI ;使IF置1,开放可屏蔽中断;主循环LOPM: IN AL,62H ;检测开始键TEST AL,20H ;检测C口的PC5端JZ LOP2 ;开始键未按下即PC5=0,则跳转检测;复位键LOP1: IN AL,62H ;检测开始键是否已经弹起,即PC5=0 TEST AL,20HJNZ LOP1 ;开始键没有弹起再重新检测MOV AL,00H ;关LED显示器OUT 61H,AL ;送到B口MOV AL,08H ;绿灯亮OUT 62H,AL ;送到C口MOV BZ, 0FFH ;置标志STILOP2: IN AL,62H ;检测复位键TEST AL,10H ;检测C口的PC4端JZ LOPM ;复位键未按下即PC4=0,则跳转再检;测开始键LOP3: IN AL,62H ;检测复位键是否弹起,即PC4=0 TEST AL,10HJNZ LOP3 ;位键没有弹起,则重新检测MOV AL,00H ;关LED显示器、指标灯OUT 61H,ALOUT 62H,ALMOV BZ,00H ;清标志STIJMP LOPM;中断服务子程序KKK1:PUSH AX ;保护现场PUSH BXPUSH DXPUSH DSCLI ;并使本次中断压入堆栈中的IF=0MOV AL,06HOUT 61H,ALCALL PUBLICPOP DS ;恢复现场POP DXPOP BXPOP AXIRETKKK2:PUSH AX ;保护现场PUSH BXPUSH DXPUSH DSCLI ;并使本次中断压入堆栈中的IF=0 MOV AL,5BHOUT 61H,ALCALL PUBLICPOP DS ;恢复现场POP DXPOP BXPOP AXIRETKKK3:PUSH AX ;保护现场PUSH BXPUSH DXPUSH DSCLI ;并使本次中断压入堆栈中的IF=0 MOV AL,4FHOUT 61H,ALCALL PUBLICPOP DS ;恢复现场POP DXPOP BXPOP AXIRETKKK4:PUSH AX ;保护现场PUSH BXPUSH DXPUSH DSCLI ;并使本次中断压入堆栈中的IF=0OUT 61H,ALCALL PUBLICPOP DS ;恢复现场POP DXPOP BXPOP AXIRETKKK5:PUSH AX ;保护现场PUSH BXPUSH DXPUSH DSCLI ;并使本次中断压入堆栈中的IF=0 MOV AL,6DHOUT 61H,ALCALL PUBLICPOP DS ;恢复现场POP DXPOP AXIRETKKK6:PUSH AX ;保护现场PUSH BXPUSH DXPUSH DSCLI ;并使本次中断压入堆栈中的IF=0 MOV AL,7CHOUT 61H,ALCALL PUBLICPOP DS ;恢复现场POP DXPOP BXPOP AXIRETKKK7:PUSH AX ;保护现场PUSH BXPUSH DSCLI ;并使本次中断压入堆栈中的IF=0 MOV AL,07HOUT 61H,ALCALL PUBLICPOP DS ;恢复现场POP DXPOP BXPOP AXIRETKKK8:PUSH AX ;保护现场PUSH BXPUSH DXPUSH DSCLI ;并使本次中断压入堆栈中的IF=0 MOV AL,7FHOUT 61H,ALPOP DS ;恢复现场POP DXPOP BXPOP AXIRETPUBLIC:TEST BZ,0FFH ;判断标志位是否为FFH JZ LOP5MOV AL,00H ;置8253方式2计数值OUT 42H,ALMOV AL,10HOUT 42H,ALMOV AL,03H ;黄灯亮,抢答成功OUT 62H,ALJMP KKKLOP5: MOV AL,00H ;置8253方式2计数值OUT 42H,ALMOV AL,20HOUT 42H,ALMOV AL,05H ;红灯亮,抢答违规OUT 62H,ALKKK: MOV AL,20H ;中断结束;防止中断重复响应OUT 20H,ALCODE ENDSEND START七、调试过程(1)在刚开始编程时,各种功能大部分是由主程序来完成的。