ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:285.32KB ,
资源ID:29808925      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/29808925.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理论文之竞赛抢答器.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机原理论文之竞赛抢答器.docx

1、微机原理论文之竞赛抢答器 目 录 摘要.1 课程设计题目.2 硬件的介绍和控制方式的选择.3 数码管显示.10 硬件连接电路图.11 程序流程图.17 设计总结.18 结束语.19 致谢.20 参考文献. 21 附录.22 1.1 源程序 1.2 cpp摘 要在现代科技的迅速发展的前提下,生活和生产中都要求尽可能的实现自动化控制,自动化控制不仅为我们的生活和生产过程带来了许多的方便,同时也显示了一个国家的科技发展水平。在我们日常生产生活以及学习中,对一些娱乐竞赛的活动需求日趋增加,而在绝大部分的娱乐比赛当中,如果在抢答中,靠视觉是很难判断出哪组先答题。因此比赛中如何判断出第一个举手或抢答的人成

2、为许多学者研究的课题。为了保证比赛的准确性、公正性、直观性,通常比赛会设置竞赛抢答器。本此微机原理课程设计课题是利用微机原理及接口技术,设计出一个竞赛抢答器系统,该抢答系统具有8个人的抢答控制按钮(本课题中使用开关作为按钮),选手通过按钮来进行抢答。本设计主要是以8086为核心,通过加上必要的支持芯片,比如时钟电路、地址锁存器、收发器、8255,8253等,构成一台完整微机系统。通过8255A与外部键盘相连,工作方式为定时扫描,利用定时器产生中断、CPU响应中断后对键盘进行扫描,或软件定时扫描,并在有键按下时转入键功能处理程序。中断优先级管理器8259A在本系统中用来管理选手按键中断信息。可编

3、程定时器计数器8253用来设定扬声器的发声频率和发声时间。LED显示器用来连接到8255A的B口,用来显示选手号。抢答器对采样获得的各路抢答信号进行分柝,能够识别超前违规信号、有效抢答信号,并对它们进行处理。使每一次抢答过程都有效。并且能够清楚的判断抢答后的回答时间是否超时,操作方便,功能齐全。整个课程设计不仅让学生在课堂上学到的纯理论知识学以致用,而且还充分锻炼了学生的分析问题解决问题的能力,开拓创新的精神,严谨了学生的思维,提高了学生的综合素质,为以后的更加独立自主的学习打下了一个良好的基础。课程设计题目 竞赛抢答器设计目的和要求目的:通过课程设计培养同学们的系统设计能力,使同学们达到以下

4、能力训练:(1)调查研究、分析问题的能力;(2)使用设计手册、技术规范的能力;(3)查阅中外文献的能力;(4)制定设计方案的能力;(5)计算机应用的能力;(6)设计计算和绘图的能力;(7)技术经济指标的分析能力;(8)语言文字表达的能力。要求:(1)了解微机化竞赛抢答器的基本原理(2)进一步学习使用并行接口一、 设计内容及步骤1、 设计内容图1为竞赛抢答器的原理图,逻辑开关K0K7代表竞赛抢答按钮07号,当某个逻辑开关置1时,相应某组抢答按钮按下。在七段数码管上将其组号(07)显示出来,并使PC喇叭响一下。图12.步骤 2.1总体设计框图 因为这次的任务是设计一个6路竞赛抢答器,所以必须要用到

5、数码显示、中断控制、计时以及分频等功能,所以初步分析之后,需要8255、8259、8253等芯片。 经过进一步的分析,实验的关键是准确判断出最先抢答者的信号并锁存,而同时不理睬其他抢答者的信号。为此,可将6个抢答按钮信号通过一个6位并行输入口接至微机中。当主持人启动抢答过程后,微机通过该并行输入口循环对6路抢答信号进行采样。当采样到那一组的抢答信号已经发出,则立即停止采样,并记录下该组的组号。每路抢答按钮电路可以参考图2.1进行设计。 图2.1 抢答按钮电路 由图可知,当6组均未按下抢答按钮时,送入到并行接口的6位抢答状态都是0,而当微机采样到这6位数据不为0时,则表示有一组获得了抢答机会,然

6、后通过逐位查询个位状态,即可判断出哪一组抢答成功,最后利用并行输出接口将抢答成功的组号现实出来.在实验中,可以仅用一位7段数码管来显示抢答选手的组号。 为了对抢答后的回答时间进行计时控制,可以利用一个可编程定时计时器,先置计数初值,再计时,当计时时间到后,由并行接口输出一个响铃信号提示抢答选手的回答时间已到。扬声器鸣叫,由于设计要求扬声器鸣叫的声音频率不同,所以必须还有一个计数器进行分频工作。 由于本系统要求对犯规的组亮红灯警告,主持人按下启动键后需要绿灯显示,以及抢答成功后需要亮黄灯,所以要设置一个LED显示电路例如,在主持人按下启动按键之前,如果有抢答钮被按下,则该抢答选手犯规,可以通过并

7、行接口输出一个信号使该组的红色发光二级管点亮以示该组选手犯规。 综上所述,本实验的硬件电路设计如图2.2。图2.2 硬件结构示意图 整个系统原理示意图2.2 硬件总体设计 1)系统方案 该抢答器所要器件:中断优先级管理器8259A、可编程并行接口芯片8255、可编程定时器计数器8253,三个一样的驱动器,黄、红、绿三个发光二极管,十三个电阻,一个6输入与非门,一个非门,一个扬声器,一个LED显示器,8个按键。 2)内存单元编址 中断优先级管理器8259A的端口地址为20H、21H 可编程并行接口接口芯片8255A的端口地址为80H、81H、82H、83H 可编程定时器计数器8253(1)的端口

8、地址为40H、41H、42H、43H;8253(2)的端口地址为60H、61、62、63。 3)键盘、扬声器及显示功能的定义8个按键中,一个开始键一个复位键,另外6个用做6位选手的抢答按键。扬声器用与黄、红、绿三个发光二极管配合使用,黄灯亮扬声器鸣叫表示抢答成功,红灯亮扬声报警表示抢答违规报警,绿灯亮扬声器不鸣则表示主持人已按下开始键。LED显示器显示的内容与选手号对应,抢答成功或违规都要显示。 题目分析根据题目中的要求,需要设计一个8路抢答器,当有人按下抢答器按钮时,表示有人抢答。并且在按钮按下的同时还要让蜂鸣器响一下,在七段数码管上还要显示相应的组号。在本次任务中用到的器件:(1)8255

9、A接口芯片:用来实现数据的输入及输出显示(2)74LS244锁存器:用来锁存数据(3)七段数码管:用来显示抢答的组号(4)按键开关:用于各个小组进行抢答 (5)导线若干,pc机在确定硬件元件后,我们组对如何用软件实现相应的功能进行了讨论,讨论得出了两种实现方案,即用软件查询法和查表法。一开始我们用的是查询法,后来老师也建议我们使用查表程序效率更高一些。后来我们查阅了相关的资料,决定采纳老师的建议使用查表法进行软件实现功能,因为后来我们了解到用查表法会让程序的运行效率较高些,而且也容易编程实现控制。 存储单元的分配、标志位的含义 定义一个TAB变量用来存储19的字形码信息,如下表LED的管脚对应

10、的字形对应存放在内存单元的字形码dp、g、f、e 、d、c、b、a0 0 0 0 0 1 1 00 1 0 1 1 0 1 10 1 0 0 1 1 1 10 1 1 0 0 1 1 00 1 1 0 1 1 0 10 1 1 1 1 1 0 00 0 0 0 0 1 1 10 1 1 1 1 1 1 1 0 1 1 0 1 1 1 112345678906H5BH4FH66H6DH7CH07H7FH6FH 定义一个BZ变量作为标志位,用来选手抢答是否违规,BZ=0FFH时表示主持人已经按下开始键选手可以抢答,BZ=00H表示主持人未按下开始按键,选手不可以抢答8255的基本介绍和控制方式的选

11、择Intel 8086/8088 系列的可编程外设接口电路(Programmable Peripheral Interface)简称 PPI,型号为8255(改进型为8255A及8255A-5),具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。8255A的通用性强,使用灵活,通过它CPU可直接与外设相连接。 8255A在使用前要写入一个方式控制字,选择A、B、C三个端口各自的工作方式,共有三种:方式0 :基本的输入输出方式,即无须联络就可以直接进行的 I/O方式。其中A、B、C口的高四位或低四位可分别设置成输入或输出。

12、方式1 :选通I/O,此时接口和外围设备需联络信号进行协调,只有A口和B口可以工作在方式1,此时C口的某些线被规定为A口或B口与外围设备的联络信号,余下的线只有基本的I/O功能,即只工作在方式0。 方式2: 双向I/O方式,只有A口可以工作在这种方式,该I/O线即可输入又可输出,此时C口有5条线被规定为A口和外围设备的双向联络线,C口剩下的三条线可作为B口方式1的联络线,也可以和B口一起方式0的I/O线。 8255A是一个并行输入、输出器件,具有24个可编程设置的I/O口,包括3组8位的I/O为PA口、PB口、PC口,又可分为2组12位的I/O口:A组包括A口及C口高4位,B组包括B口及C组的

13、低4位。D7:标志位D6-D5:端口A方式选择(02)D4:端口A输入输出选择D3:端口C高4位输入输出选择D2:端口B方式选择(01)D1:端口B输入输出选择D0:端口C低4位输入输出选择使用8255A前必须根据CPU类型进行数据线连接,如果使用8088CPU则需将8位数据线与8255A数据线连接,如果是8086CPU则需将8255A数据线与CPU数据线的低8位连接,进行操作时必须使用偶地址。因为本课题不需要中断,只是单独PC口的输入和PA口的输出,故选择PA口的方式0并定义为输出,PC口定义为输入模式。PB端口未使用设为默认输出状态。所以控制字为10001001B=89H。在此设其地址为8

14、0H83H,则其初始化程序为:MOV AL,89H ;设置控制字MOV DX,83H ;设置地址OUT DX,AL ;输出 数码管显示数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管; 按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管

15、的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。它与8255A的接法如图: 硬件连接电路图图1为竞赛抢答器(模拟)的原理图,逻辑开关K0K7代表竞赛抢答按钮07号,当某个逻辑电平开关置“1”时,相当某组抢答按钮按下。在七段数码管上将其组号(07)显示出来,并使微机扬声器响一下。表1 LED 数码表012345673fh06h5bh4fh66h6dh7dh07h三、编程提示设置8255为口输入、口输出,读取口数据,若为0表示无人抢答,若不为0则有人抢

16、答。根据读取数据可判断其组号。从键盘上按空格键开始下一轮抢答,按其它键程序退出。3.1 芯片介绍1) 中断优先级管理器8259A8259A内部结构8259A采用NMOS工艺制成,有28根引脚,所有输入、输出端与TTL电平兼容,单一电源(Vcc=+5V)供电。8259的内部主要组成部分,包括处理部件(中断请求寄存器IRR、优先级鉴别器PR及现行服务寄存器ISR)、控制部件(控制逻辑及中断屏蔽寄存器IMR)、数据总路线缓冲器、读写逻辑以及级联缓冲器比较器等5个部分。8259A主要的外部引脚 D0D7:双向数据线,CPU与8259间利用这个数据总路线传送数据及命令。:写控制输入信号,同控制总路线上的

17、信号相连。:读控制输入信号,同控制总路线上的信号相连。A0:地址选择信号,用来对8259A内部的两个可编程寄存器进行选择。:片选输入信号,低电平有效。有郊时可通过数据总路线设置命令并对内部寄存器进行读出。当进入中断响应时序时,该引脚状态与进行的处理无关。INT:由8259A向CPU发出的中断请求信号。:输入信号,接收CPU送来的中断响应信号INTA。IR0IR7:8个中断请求输入信号,高电平或上升沿有效。用于接收外设接口来的中断请求。8259A工作方式a. 优先级设置方式:全嵌套方式(固定优先级方式)、特殊全嵌套方式(可响应同级中断方式)、轮转优先级方式、特殊轮转优先级方式。b. 中断源屏蔽方

18、式:普通屏蔽方式、特殊屏蔽方式。c. 中断结束方式:中断自动结束方式、中断非自动结束方式(包括一般中断结束方式、特殊中断结束方式)。d. 系统总路线连接方式:缓冲方式、非缓冲方式。e. 中断请求信号触发方式:边沿触发方式、电平触发方式。8259A初始化控制字格式ICW1(芯片控制字)D7 D6 D5D4D3D2D1D00 0 0特征位1触发方式0 边沿触发1 电平触发0单片选择信号0 多片8259级联1 单片8259是不要ICW40 不要(8080/8085)1 要(80X86)ICW2(中断类型码控制字,D7D3设置中断类型码)D7D6D5D4D3D2D1D0000ICW3(主片,级联时才用

19、设置,各位为1则表示接有从片)D7D6D5D4D3D2D1D0IR7IR6IR5IR4IR3IR2IR1IR0ICW3(从片,级联时才用设置)D7D6D5D4D3D2 D1 D000000ID2 ID1 ID0 从片INT接于主片的引脚0 0 0 IR00 0 1 IR1 1 1 1 IR7ICW4(方式控制字)D7 D6 D5D4D3D2D1D00 0 0嵌套方式0 全嵌套方式1特殊全嵌套方式缓冲方式0非缓冲方式1缓冲方式缓冲方式下0本片为从片1本片为主片中断结束方式0中断非自动结束1中断自动结束系统类型0 8080/80851 80X868259A操作命令字格式OCW0(中断屏蔽字,各位为

20、1则被屏蔽)D7D6D5D4D3D2D1D0IR7IR6IR5IR4IR3IR2IR1IR0OCW1(轮转优先级和中断结束字)D7D6D5D4 D3D2 D1 D0轮转位0 非轮转1 轮转选择标志位1 L2L0无效1 L2L0有效中断结束位0 非中断结束 1 中断结束特征位00标志位000 IR0 优先级最低001 IR1 优先级最低OCW2(特殊屏蔽、查询和状态读取字)D7D6D5D4 D3D2D1D00特殊屏蔽方式允许位0 禁止特殊屏蔽方式1 允许特殊屏蔽方式特殊屏蔽方式位0 非特殊屏蔽方式1 特殊屏蔽方式特征位01中断查询位0非中断查询1中断查询读寄存器0 禁止读1 允许读0读IRR1读

21、ISR2) 可编程并行接口接口芯片8255A8255A内部结构8255A芯片是一个采用NMOS工艺制造的40引脚双列直插式(DIP)封装组件。8255A有3个8位数据端口,即A口、B口及C口,它们都可以分别作为输入口或输出口使用;A组控制与B组控制;读写控制逻辑;数据总路线缓冲器。8255A主要的外部引脚图3.2 8255A引脚图PA7PA0:A口的8条IO线。8条线只能同时作为输入或输出,不能分开使用,可设置成双向口,也只有A口允许这样做。PB7PB0:B口的8条IO线。不可以设置成双向口,其它和A口一样。PC7PC0:C口的8条IO线。不可以设置成双向口,但它可以分拆为两组即高4位和低4位

22、,这两组可以任意设置为输入或输出。除了作为独立的IO线外,C口还经常为A口、B口服务,配合A口、B口作联络线使用。A1、A0:端口地址选择信号。用于选择8255A的3个数据端口和一个控制口。当A1A0=00时,选择端口A;为01时,选择端口B;为10,选择端口C;为11时,选择控制口。8255A工作方式方式0:基本的输入输出方式。A口、B口、C口都可以工作在些方式下。方式1:选通输入输出方式(应答方式)。A口、B口工作在此方式下。方式2:双向传输方式。只有A口可以工作在此方式下。8255A方式控制字格式D7D6、D5D4D3D2D1D01A口A口C口高4位B口B口C口低4位00 方式001 方

23、式11x 方式20 输出1 输入0 输出1 输入0方式01方式10 输出1 输入0 输出1 输入3) 可编程定时器计数器82538253的内部结构8253采用NMOS工艺制成,有24个引脚,所有输入、输出端均TTL电平兼容,单一电源(Vcc=+5V)供电,最高计数速率为2.6MHz。它包括3个计数器(即计数器0、1、2)、数据总路线缓冲器、读写逻辑以及控制寄存器等4个部分。8253的外部引脚图3.3 8253引脚图A1、A0:地址输入线,用来址8253内部的4个端口,即3个计数器和1个控制字寄存器与CPU系统地址线相连。CLK0、CLK1、CLK2:时钟脉冲输入端,用于输入定时脉冲或计数脉冲信

24、号。CLK可以是系统的时钟脉冲,也可以由系统时钟分频或者其他脉冲源提供。当用于定时时,这个脉冲必须是均匀的、连续的、周期精确的,而用于计数时,这个脉冲可以是不均匀的、断续的、周期不定的。GATE0、GATE1、GATE3:门控输入端,用于外部控制计数器的启动计数和停止计数的操作。两个或两个以上计数器连用时,可用此信号同步,也可用于与外部某信号的同步。OUT0、OUT1、OUT2:计数输出,当计数器从初值开始完成计数操作进,OUT引脚输出相应的信号。8253的工作方式方式0:减1计数到0,产生中断请求信号。方式1:减1计数到0,产生可重复触发的单稳态负脉冲信号。方式2:减1计数到1,分频器(速率

25、信号发生器)。方式3:减1计数到初值的12,方波发生器。方式4:减1计数到0,软件触发产生选通负脉冲信号。方式5:减1计数到0,硬件触发产生选通负脉冲信号。8253方式控制字格式D7 D6D5 D4D3 D2 D1D000 选计数器001 选计数器110 选计数器200 计数器锁存01 只读写低8位10 先读写高8位11 先读写低8位 再读写高8位000 方式0001 方式1X10 方式2X11 方式3100 方式4101 方式50 二进制计数1 BCD计数3.2芯片的连接 1)各芯片与CPU的连接8259A、8255A、8253的数据总线D7D0端、端、端、端、端、INT端分别与CPU的D7

26、D0数据总线、片选端、端、端、端、INTR端。8255A、8253的A1、A0端分别接入CPU地址线的A1、A0端,8259的A0端接到CPU地址线的A0端; 2)各芯片之间的连接和与外设的连接8259A的IR2端接选手按键信息输出端;8255A的A口的PA5PA0依次接“按键1”“按键6”,B口的PB5PB0通过驱动器1接到LED显示器,C口的PC4、PC5分别接复位键和开始键,PC3、PC2、PC1经驱动器2分别接绿灯发光二极管、红灯发光二极管、黄灯发光二极管,PC0接到8253的GATE1端;8253(1)的GATE0端接+5V电压,OUT0的输出接入CLK1端,OUT1的输出经反相器后

27、接入GATE2端,CLK0和CLK2接入1MHz的频率发生器,OUT2经驱动器3接扬声器。8253(2)的的GATE0端GATE2端接+5V电压,OUT0的输出接入CLK1端,OUT1的输出与OUT2接与门之后连接扬声器,GATE1接8253(1)的OUT1,CLK0和CLK2接入1MHz的频率发生器,OUT2经驱动器3接扬声器。两个8253分别用于定时扬声器发声12s 程序流程图 设计总结本次实验是要求设计一个竞赛抢答器。在做本实验之前,我们先熟悉了中断优先级管理器8259A、可编程并行接口接口芯片8255A、可编程定时器计数器8253和数码管的用法,掌握了汇编程序的设计。通过本次实验掌握了微机系统的开发步骤,锻炼了我们的对硬件和软件的的综合操作。本次设计需要熟练掌握汇编语言,熟悉中断优先级管理器8259A、可编程并行接口接口芯片8255A、可编程定时器计数器8253的内部结构、外部引脚和功能,熟悉LED显示器的结构及译码方式。中断优先级管理器8259A在本系统中用来管理选手按键中断信息。可编程并行接口接口芯片8255A在本系统中用来连接选手的按键,逻辑开关K0K7代表竞赛抢答按钮07号,当某个逻辑开关置1时,相应某组

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1