- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理与接口技术课程设计报告
学号:2009212100
2009212111
姓名:邢 锐 锐
卞 先 南
班级: 0610902
专业:生物医学工程
指导教师:祝 家 钰
题目要求:
开关K0-K7代表竞赛抢答按钮0-7号,当某个逻辑电平开关置“1”时,相当于某组抢答按钮按下,在七段数码管上将其组号(0-7)显示出来,并使喇叭响一下。发一个脉冲开始下一轮抢答,按其他键程序退出。同时考虑抢答允许时间,10秒内有效,10秒之后无人抢答,本次抢答作废。
设计思路:
抢答器设计可分为以下几部分:开始抢答信号的接收;计时器的倒计时;检查抢答按钮并显示在数码管上;任意键退出程序。
对此,我们选用可编程并行接口芯片8255A,采用方式0,PA接口做输入,接收抢答信号,并用PB接口做输出通过编程将抢答组号输出到数码管显示。PC接口用PC0接扬声器通过芯片控制其发声,PC7接口接收开始的脉冲信号,当接收到高电平时开始一轮抢答。
定时器我们选用可编程定时/计数器8254.,采用方式0在计数结束时产生正跃变信号。我们使用计数器0,其中GATE0接8255的PC1端口,高电平时开始计数,OUT0接8255的PC6,CLK0接试验箱上的频率为1HZ的脉冲发生器,当做1秒计时信号。
编程对8255A初始化后,开始时由脉冲发生器产生一个正脉冲被8255A的PC7接收,8255A则通过PC1输出高电平使定时器8254工作;这之前通过编程使8254实现10秒倒计时。
当8254开始计时时,8255循环检查PA端口和PC6端口,若有人抢答,则PA 端口有高电平输入,此时若PC6仍然低电平,则抢答有效,通过编好的程序判断是第几组抢答,并通过PB端口输出一段01代码使数码管显示组号,同时PC0端口产生高电平使扬声器发声;若循环时PA端口一直低电平而PC6产生高电平,说明时间已到,PC0端口产生高电平使扬声器发声。
扬声器发声后,编程使8254定时2秒,并在时间到时OUT0发出高电平通知8255A使之将PC0输出变为低电平,扬声器停止发声。
至此,一轮抢答结束,插入一个任意键退出子程序,并等待脉冲信号开始下一辆抢答。
设计电路原理图
程序流程图
是
否
否
是 否
是
程序清单
MY82540 EQU 9840H
MY82541 EQU 9841H
MY82542 EQU 9842H
MY8254M EQU 9843H
MY8255A EQU 9860H
MY8255B EQU 9861H
MY8255C EQU 9862H
MY8255M EQU 9863H ; 8254,8255宏定义
DATA SEGMENT
TAB DB 60H,0CAH,0F2H,66H,0B6H,0BEH,0E0H,0FEH ; 控制七个数码管
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV DX,MY8255M ;初始化8255
MOV AL
OUT DX,AL
RE:MOV DX,MY8255C ; 检查脉冲信号
IN AL,DX
AND AL ;PC口工作方式 方式二
JZ RE
MOV DX,MY8254M ; 定义8254方式
MOV AL ; 计数器0,先低八位在高八位,工作方式0,十进制计数
OUT DX,AL
MOV DX,MY82540 ; 定时10秒
MOV AL ; 延时100
OUT DX,AL
MOV DX,MY8255C ; gate开启
MOV AL
OUT DX,AL
JCH: MOV DX,MY8255A ; 检查是否有人按键
IN AL,DX
TEST AL ;
文档评论(0)