汇编语言八路抢答器设计

合集下载

八路智力抢答器课程设计

八路智力抢答器课程设计

数字抢答器电路设计一、设计题目八路竞赛抢答器二、课程设计目的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路抢答器设计八路智力竞赛抢答器

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八路定时抢答器的设计一、设计题目八路智力竞赛抢答器二﹑设计要求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路抢答器设计(含完整图)

数字电路课程设计报告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 。

八路抢答器(汇编程序) 微机课程设计

八路抢答器(汇编程序) 微机课程设计

课程设计报告课程微机原理课程设计题目竞赛抢答器系别物理与电子工程学院年级09级专业电子信息工程班级1班学号5,6,7,8学生姓名指导教师职称设计时间目录第一章关于抢答器的概述及设计要求错误!未定义书签。

数字抢答器的简介错误!未定义书签。

课程设计要求错误!未定义书签。

实现功能错误!未定义书签。

第二章总体设计错误!未定义书签。

功能需求分析错误!未定义书签。

可行性分析错误!未定义书签。

硬件总体设计错误!未定义书签。

硬件器材错误!未定义书签。

内存单元地址错误!未定义书签。

软件流程图错误!未定义书签。

第三章硬件设计错误!未定义书签。

所选芯片介绍错误!未定义书签。

可编程并行接口接口芯片8255A 错误!未定义书签。

可编程定时器/计数器8253 错误!未定义书签。

系统所选用各芯片的连接错误!未定义书签。

各芯片与CPU的连接错误!未定义书签。

各芯片之间的连接和与外设的连接错误!未定义书签。

第四章软件设计错误!未定义书签。

程序流程错误!未定义书签。

子程序清单错误!未定义书签。

4.. 芯片8255初始化:错误!未定义书签。

4..芯片8253初始化:错误!未定义书签。

4..获取选手号码子程序:错误!未定义书签。

数码管显示子程序:错误!未定义书签。

扬声器鸣叫时间:错误!未定义书签。

第五章结果分析错误!未定义书签。

结束语错误!未定义书签。

附录错误!未定义书签。

参考文献错误!未定义书签。

主程序清单错误!未定义书签。

第一章关于抢答器的概述及设计要求数字抢答器的简介抢答器是在竞赛、文体娱乐活动(抢答活动)中,能准确、公正、直观地判断出抢答者的机器。

通过抢答者的指示灯显示、数码显示和警示显示等手段指示出第一抢答者。

随着科学技术的不断发展,促使人们学科学,学技术,学知识的手段多种多样,抢答器作为一种强大工具,已经广泛应用于各种知识能力竞赛场合,例如选拔人才、评选优胜及各种智力竞赛等。

目前知识竞赛之类的活动愈加频繁,凡是有知识竞赛类的活动那么也就必然离不开抢答器。

完整word版,用51单片机汇编语言编写八位抢答器程序,推荐文档

完整word版,用51单片机汇编语言编写八位抢答器程序,推荐文档

课题用51单片机汇编简易的8键数码蜂鸣抢答器日期:2013 年7 月10日随着科学技术的不断发展,促使人们学科学、学技术、学知识的手段多种多样。

抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。

但抢答器的使用频率较低,且有的要么制作复杂,要么可靠性低,减少兴致。

做为一个单位若专购一台抢答器虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢答器损坏,再购置的麻烦和及时性就会影响活动的开展,因此设计了本抢答器。

本设计是以8路抢答为基本理念。

考虑到依需设定限时回答的功能,利用AT89C51单片机及外围接口实现的抢答系统,只需要人为的编写汇编语言到单片机里,就能实现和满足不同的控制方案,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使LED数码管能够正确地显示倒计时间和抢答情况。

具体功能为:1,按下复位键代表主持人宣布抢答开始,同时数码管开始进行抢答倒计时,倒计时开始计时后方能开始抢答,抢答用按键形式;2,开抢答限定时间为30秒,超过30秒后倒计时停止,之后选手将抢答无效;3,先按下键的选手即为抢答成功,蜂鸣器将持续几秒将提示抢答成功,数码管将显示该选手的号码,同时相应的选手灯会亮;4,抢答成功的选手即先按下键盘,其他按键将锁定,无效;5,5,按下复位键进行下一次抢答。

本系统是借用单片机采用模块化设计的简易版抢答器,主控与参赛者设为终端分系统。

参赛者分系统设有:抢答按纽、计时显示、提示功能;主控分系统有:复位开始,计时显示。

其主要模块为:1.主控制器模块:采用AT89S51单片机控制;2.抢答器显示模块:数码管和灯显示;3.抢答成工提示模块:蜂鸣器提示;4.抢答器键盘:S1到S8八个按钮分别代表1-8号选手下图为系统主要功能模块图工作流程图为程序流程图程序源代码为org 0ajmp mainorg 0bhajmp top main:setb et0setb eamov tmod,#1 mov th0,#3ch mov tl0,#0b0h setb tr0mov dptr,#tabmov 31h,#30hmov r2,#20display:lcall l5msmov a,31hanl a,#0fhmovc a,@a+dptrmov p0,amov p2,#0fbhacall l5msmov a,31hswap aanl a,#0fhmovc a,@a+dptrmov p0,amov p2,#0f7hacall l5msljmp displayl5ms:mov r3,#0djnz r3,$retTAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H top:L: MOV P3,#1FHMOV A,P3CJNE A,#1FH,L1SJMP aiL1: MOV 20H,AMOV P3,#0E3HMOV A,P3ai:mov tl0,#0b0h mov th0,#3chdjnz r2,lendmov r2,#20mov a,31hanl a,#0fhcjne a,#0,yimov a,31hsubb a,#7cjne a,#0h,c1sjmp eryi:mov a,31hdec acjne a,#0,c1sjmp erc2:mov 31h,asjmp lendc1:mov 31h,a lend:retier:mov r5,#1cjne r5,#0,erL2: ORL 20H,AMOV A,20HMOV P2,#0FEHMOV P0,#0F9Hmov p1,#7fhacall beepSJMP LL3: CJNE A,#0BBH,L4 MOV P0,#0A4Hmov p1,#0bfhacall beepL4: CJNE A,#07BH,L5MOV P0,#0B0Hmov p1,#0dfhacall beepL5: CJNE A,#0D7H,L6MOV P0,#99Hmov p1,#0efhacall beepL6: CJNE A,#0B7H,L7MOV P0,#92Hmov p1,#0f7hacall beepL7: CJNE A,#77H,L8MOV P0,#82Hmov p1,#0fbhacall beepL8: CJNE A,#0CFH,L9 MOV P0,#0F8Hmov p1,#0fdhacall beepMOV P0,#80Hmov p1,#0fehacall beepL10: aJMP Lbeep:clr eaclr et0clr tr0LCALL DLYCPL P2.4DJNZ R4,beepsjmp $DLY: MOV R6, #20 D1: MOV R7, #248DJNZ R7, $DJNZ R6, D1retEND心得体会通过课程设计使我进一步熟悉和掌握单片机内部结构和工作原理,了解单片机应用系统设计的基本方法和步骤通过利用ATC89C51单片机,理解单片机在自动化仪表中的作用以及掌握单片机的编程方法;通过本次设计,掌握单片机仿真软件kill的使用方法;理论联系实践,体现出大学生动手能力。

八路抢答器的设计

八路抢答器的设计
2、电路组成
抢答者序号显示电路主要由译码驱动电路及数码显示电路组成。 在实际电路设计过程中,译码驱动电路一般可以直接使用专用数字 集成电路,而数码显示电路一般使用七段LED数码管。
LED数码显示器
常用的数字显示器有多种类型,按显示方式分,有字型重叠式、点 阵式、分段式等。按发光物质分,有半导体显示器,又称发光二极管 (LED)显示器、荧光显示器、液晶显示器、气体放电管显示器等。目 前应用最广泛的是由发光二极管构成的七段数码显示器。
脚的处理方法一般为接地或者接电源的方法,需要视具体电路作不同的处 理。)。该芯片的15脚为空余端子,在使用时可以不作任何处理。该电路的 输出为十进制编码的反码,为了确保译码显示电路能够正确译码及显示,在实 际电路中还需要对该电路的十进制编码输出端进行取反处理,一般在其每个输 出端接一个非门即可。
2、编码电路


抢 答 信 号 输 入
者 序 号 编 码 输 出
锁存及解锁电路
1、电路作用
锁存电路主要用于对抢答者的抢答信息进行锁存,以确保电路只响 应一位抢答者的抢答请求。解锁电路主要用于在本轮抢答后,主持人 解除本轮抢答信息,以便能够进入下一轮抢答。
2、电路组成
在实际电路设计过程中,锁存电路一般可以直接使用触发器构成, 该电路有别于前面使用的数字集成电路。该电路的输出不经取决于电 路的当前输入状态,还与电路的上一个状态有关,称为时序逻辑电路 (前面介绍的为组合逻辑电路)。在本设计中采用74LS373作为锁存 电路。
二、设计任务分析
1、所设计的电路必须存在抢答开关阵列才能实现抢答功能;
2、电路中必须存在能够显示抢答结果的LED数码管,该数码管在 抢答结束后,应当立即显示对应的抢答结果。抢答器复位后,该数 码管显示为“0”,以表明当前状态为待抢答状态;

8路抢答器设计课程设计

8路抢答器设计课程设计

8路抢答器设计课程设计一、课程目标知识目标:1. 让学生掌握8路抢答器的基本原理和电路设计,了解其工作过程。

2. 使学生理解数字电路的基本组成,掌握抢答器中用到的逻辑门电路及其功能。

3. 帮助学生掌握计时器的使用方法,并能将其与抢答器结合使用。

技能目标:1. 培养学生运用所学知识设计简单数字电路的能力,具备一定的动手实践操作技能。

2. 提高学生分析问题和解决问题的能力,通过团队合作完成抢答器的设计与搭建。

情感态度价值观目标:1. 激发学生对电子技术的兴趣,培养其探索精神和创新意识。

2. 培养学生团队合作意识,学会互相帮助、共同进步。

3. 增强学生的自信心和成就感,使其在完成课程任务的过程中体验学习的乐趣。

课程性质:本课程为电子技术实践课程,旨在让学生将所学理论知识应用于实际操作中,提高学生的动手实践能力。

学生特点:本课程针对初中或高中年级学生,他们已具备一定的电子技术基础,对新鲜事物充满好奇心,喜欢动手操作。

教学要求:结合学生特点和课程性质,教师应采用启发式教学方法,引导学生主动参与课程,注重实践操作和团队合作,确保学生在课程中达到预定的学习目标。

通过分解课程目标为具体的学习成果,便于后续教学设计和评估的实施。

二、教学内容本课程教学内容主要包括以下几部分:1. 数字电路基础知识:回顾与抢答器相关的数字电路基本原理,如逻辑门电路、触发器等,确保学生对相关知识点的掌握。

2. 抢答器工作原理:详细讲解8路抢答器的工作原理,包括抢答信号的产生、计时器的工作过程等。

3. 电路设计与搭建:指导学生运用所学知识,设计并搭建8路抢答器的电路,包括选择合适的元器件、绘制电路图等。

4. 教学案例分析与实践:分析典型抢答器案例,让学生了解实际应用中的注意事项,提高学生分析和解决问题的能力。

教学内容安排如下:第一课时:数字电路基础知识回顾,抢答器工作原理讲解。

第二课时:抢答器电路设计与搭建,学生分组讨论并确定设计方案。

(完整word版)用51单片机汇编语言编写八位抢答器程序(word文档良心出品)

(完整word版)用51单片机汇编语言编写八位抢答器程序(word文档良心出品)

课题用51单片机汇编简易的8键数码蜂鸣抢答器日期:2013 年7 月10日随着科学技术的不断发展,促使人们学科学、学技术、学知识的手段多种多样。

抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。

但抢答器的使用频率较低,且有的要么制作复杂,要么可靠性低,减少兴致。

做为一个单位若专购一台抢答器虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢答器损坏,再购置的麻烦和及时性就会影响活动的开展,因此设计了本抢答器。

本设计是以8路抢答为基本理念。

考虑到依需设定限时回答的功能,利用AT89C51单片机及外围接口实现的抢答系统,只需要人为的编写汇编语言到单片机里,就能实现和满足不同的控制方案,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使LED数码管能够正确地显示倒计时间和抢答情况。

具体功能为:1,按下复位键代表主持人宣布抢答开始,同时数码管开始进行抢答倒计时,倒计时开始计时后方能开始抢答,抢答用按键形式;2,开抢答限定时间为30秒,超过30秒后倒计时停止,之后选手将抢答无效;3,先按下键的选手即为抢答成功,蜂鸣器将持续几秒将提示抢答成功,数码管将显示该选手的号码,同时相应的选手灯会亮;4,抢答成功的选手即先按下键盘,其他按键将锁定,无效;5,5,按下复位键进行下一次抢答。

本系统是借用单片机采用模块化设计的简易版抢答器,主控与参赛者设为终端分系统。

参赛者分系统设有:抢答按纽、计时显示、提示功能;主控分系统有:复位开始,计时显示。

其主要模块为:1.主控制器模块:采用AT89S51单片机控制;2.抢答器显示模块:数码管和灯显示;3.抢答成工提示模块:蜂鸣器提示;4.抢答器键盘:S1到S8八个按钮分别代表1-8号选手下图为系统主要功能模块图工作流程图为程序流程图程序源代码为org 0ajmp mainorg 0bhajmp top main:setb et0setb eamov tmod,#1 mov th0,#3ch mov tl0,#0b0h setb tr0mov dptr,#tabmov 31h,#30hmov r2,#20display:lcall l5msmov a,31hanl a,#0fhmovc a,@a+dptrmov p0,amov p2,#0fbhacall l5msmov a,31hswap aanl a,#0fhmovc a,@a+dptrmov p0,amov p2,#0f7hacall l5msljmp displayl5ms:mov r3,#0djnz r3,$retTAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H top:L: MOV P3,#1FHMOV A,P3CJNE A,#1FH,L1SJMP aiL1: MOV 20H,AMOV P3,#0E3HMOV A,P3ai:mov tl0,#0b0h mov th0,#3chdjnz r2,lendmov r2,#20mov a,31hanl a,#0fhcjne a,#0,yimov a,31hsubb a,#7cjne a,#0h,c1sjmp eryi:mov a,31hdec acjne a,#0,c1sjmp erc2:mov 31h,asjmp lendc1:mov 31h,a lend:retier:mov r5,#1cjne r5,#0,erL2: ORL 20H,AMOV A,20HMOV P2,#0FEHMOV P0,#0F9Hmov p1,#7fhacall beepSJMP LL3: CJNE A,#0BBH,L4 MOV P0,#0A4Hmov p1,#0bfhacall beepL4: CJNE A,#07BH,L5MOV P0,#0B0Hmov p1,#0dfhacall beepL5: CJNE A,#0D7H,L6MOV P0,#99Hmov p1,#0efhacall beepL6: CJNE A,#0B7H,L7MOV P0,#92Hmov p1,#0f7hacall beepL7: CJNE A,#77H,L8MOV P0,#82Hmov p1,#0fbhacall beepL8: CJNE A,#0CFH,L9 MOV P0,#0F8Hmov p1,#0fdhacall beepMOV P0,#80Hmov p1,#0fehacall beepL10: aJMP Lbeep:clr eaclr et0clr tr0LCALL DLYCPL P2.4DJNZ R4,beepsjmp $DLY: MOV R6, #20 D1: MOV R7, #248DJNZ R7, $DJNZ R6, D1retEND心得体会通过课程设计使我进一步熟悉和掌握单片机内部结构和工作原理,了解单片机应用系统设计的基本方法和步骤通过利用ATC89C51单片机,理解单片机在自动化仪表中的作用以及掌握单片机的编程方法;通过本次设计,掌握单片机仿真软件kill的使用方法;理论联系实践,体现出大学生动手能力。

八路竞赛抢答器课程设计

八路竞赛抢答器课程设计

八路竞赛抢答器课程设计目录摘要 (1)1 八路竞赛抢答器的设计要求与设计方案 (2)1.1 八路竞赛抢答器的方案选择与比较.. 21.2 八路竞赛抢答器的元件选择 (3)2 八路竞赛抢答器的硬件设计 (3)2.1 八路竞赛抢答器的硬件框图 (3)2.2 显示电路设计 (4)2.3 电路设计 (4)2.4 开始和复位电路 (5)2.5 总电路 (6)2.6 可编程并行接口8255及其引脚说明 82.7 8086及引脚说明 (10)2.7.1 名称和功能相同的32个引脚 102.7.2 最小模式下的24--31引脚 (12)2.7.3 最大模式下的24--31引脚 (13)3 八路抢答器的软件设计 (15)3.1 主程序流程图 (15)3.2 显示模块程序设计 (16)3.3 延时模块程序设计 (17)3.4 开始模块程序设计 (18)3.5 复位模块程序设计 (18)3.6 程序清单 (19)设计体会与小结 (22)参考文献 (23)摘要随着科学技术的不断发展,促使人们学科学、学技术、学知识的手段多种多样。

抢答器作为一种工具,已经广泛应用于各种智力知识竞赛场合。

但抢答器的使用频率较低,有的制作复杂,有的可靠性低,减少实用性。

本课程设计是基于微机原理与接口技术的简单应用。

通过硬件与软件的结合,用我们刚刚学过的汇编语言编写程序模拟分析了竞赛中抢答系统的运用,结合竞赛的实际情况阐述了抢答系统的工作原理,给出了一种简单实用的多路抢答系统的硬件、软件电路设计方案。

该抢答器由主持人通过时间预设开关预设供抢答的时间,系统将完成自动倒计时。

若在规定的时间内有人抢答,则计时将自动停止;若无人抢答,当主持人按下复位按钮时,屏幕显示清零,等待下一轮抢答。

本课题设计了一种采用8255芯片和汇编语言制作的多功能抢答器,实验箱中的开关区和数码显示区共同完成。

主要功能:1.倒计时 2.用LED数码管显示1-8号选手先按下键者的号码。

八路抢答器课程设计

八路抢答器课程设计

八路抢答器课程设计一、背景在当今时代,信息技术的发展及应用越来越深入人们的生活,在教育领域也有着广泛应用。

在教育课程设计中,教师用八路抢答器来进行互动式教学,为学生学习增添了不少乐趣,同时,学生也学会了如何协作解决问题,增强思维能力。

二、任务以PIC18F4520的抢答器程序设计为基础,完成一套八路抢答器课程设计,包括程序设计、实物结构设计及相应的教学实施方案。

三、程序设计(1)课程开发环境该课程使用MPLAB X IDE(v3.35)软件进行开发,为C语言编程,主控微处理器为PIC18F4520,用到的硬件元件有蜂鸣器、按钮和数码管等。

本课程基于MCHP(Microchip)官方库(XC8),采用C 语言编程,并参考Microchip开发的示例程序(Clicker)。

(2)程序设计(1)系统结构框架系统架构分为按钮控制模块、数字管显示模块和延时控制模块。

(2)按钮控制模块按钮控制模块的功能是接收按钮按下信号,根据信号的变化来控制系统的运行状态,共包括节拍按钮、开始按钮和结束按钮三个部分。

(3)数字管显示模块数字管显示模块的功能是显示抢答者应答的结果,具体包括:显示延时计时器的值,显示抢答者得分情况,显示获胜者的序号。

(4)延时控制模块延时控制模块的功能是计算延时时间,系统会根据节拍按钮的按动情况计算抢答者的延时时间,最后根据延时时间最短的判断获胜者。

四、实物结构设计(1)实物结构根据程序设计,系统的结构主要包括PIC18F4520微处理器,按钮,蜂鸣器,数码管,LED指示灯,电源等元件组成。

(2)硬件连接PIC18F4520与蜂鸣器连接在RA0上,按钮和LED灯连接在RA3、RA4和RA5上,数码管连接在RA1和RA2上,电源接口和其他元件连接如下图所示。

五、教学实施(1)课程分析本课程是基于PIC18F4520的抢答器程序设计,主要涉及编程、硬件连接和系统运行实施三个内容,重点讲解如何通过编程实现系统的运行。

8位抢答器(原理图+汇编程序)

8位抢答器(原理图+汇编程序)

ORG 000JMP BEGINTABLE: ; 共阴极数码管显示代码表DB 3FH,06H,5BH,4FH,66H ; 01234DB 6DH,7DH,07H,7FH ; 46789DELAY: MOV R5, #20 ; 延时20×20ms子程序LOOP4: MOV R6, #50LOOP5: MOV R7, #100DJNZ R7, $DJNZ 6, LOOP5DJNZ R5, LOOP4RETBEGIN: MOV P2, #0FFH ;P2口置高电平,准备接收信号 MOV R4, #0 ; "R4"的位标志值清零。

MOV A, R4 ; "R4"位标志值送A寄存AGAIN: MOV DPTR, #TABLE ;共阴极数码管代码表首址送 MOVC A, @A+DPTR ;取出显示"0"的代码送P口显示 MOV P1, ALOOP1: MOV A, P3 ;接收P3口的抢答信号。

CPL A ;抢答信号求反JZ LOOP1 ;如果没有抢答信号再返回LOOP1LOOP2: RRC A ;有抢答信号则逐次移动判断是那一位抢答INC R4 ;每移一次位,R4位标志值加1JNC LOOP2 ;如果没有遇到抢答信号返回LOOP1继续移位MOV A, R4 ;遇到抢答信号把R4位标志的只送A MOVC A, @A+DPTR ;找到相应位的显示代码MOV P1, A ;送P1口显示LOOP3: JNB P2.2, BEGIN ;若主持人按了复位信号健则转向程序复位CPL P2.0 ;若没按复位信号键,则通过P2.2给出高低信号驱动蜂鸣器LCALL DELAY ;调用延时程序SJMP LOOP3 ;P2.2口反复间隔0.4秒变化,驱动蜂鸣器 END。

课程设计---八路智力竞赛抢答器的设计

课程设计---八路智力竞赛抢答器的设计

摘要抢答器是一种常见的电子产品,尤其是在各类智力竞猜中,为了实现选手的公平性,性能优良的抢答器往往更能得到各单位的青睐。

这里通过两种设计方案的对比,最终选定了用单片机实现抢答器电路。

由于单片机具有可编程定时器和中断设备,便于实现编程和时间的精确控制。

所用方案电路结构简单,易于实现,它用4个七段数码管来显示,且具有简单精准的报警电路。

所选方案的一个很重要的特点在于具有灵活性,主持人可以根据题目难易进行时间设定,这样进一步保证了公平性。

由于它具有成本低廉,结构简单,且性能优良的诸多优点,必定会得到广泛的应用。

关键词:抢答器,单片机,七段数码管,时间设定目录一方案的概述 (1)1.1 设计内容及要求 (1)1.1.1 设计内容 (1)1.1.2 设计要求 (1)1.2 设计方框图 (2)1.3 抢答器的程序流程 (3)二抢答器单元设计及其说明 (8)2.1主要芯片的介绍 (8)2.2程序流程图 (10)2.3 MAX7219 (12)2.3.1 MAX7219引脚说明 (12)2.3.2 基本的工作方法 (13)2.3.3 MAX7219初始化 (14)2.3.4 部分程序功能介绍 (14)2.4LCD简介 (16)2.4.1LCD和LED的区别 (16)2.4.3显示电路设计和LCD的引脚功能说明 (17)2.4.4液晶显示模块 (18)三抢答器电路原图及仿真 (20)3.1抢答器原理图 (20)3.2仿真软件介绍 (21)3.3仿真测试效果 (22)设计小结............................................ 错误!未定义书签。

参考文献............................................ 错误!未定义书签。

附录一.............................................. 错误!未定义书签。

附录二.............................................. 错误!未定义书签。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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)在刚开始编程时,各种功能大部分是由主程序来完成的。

相关文档
最新文档