通信工程 打字游戏.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.设计概述 2 设计题目 2 设计要求 2 设计方案 2 2.硬件说明 3 8255a介绍 3 8253a介绍 3 3.软件流程 9 软件流程图 9 4.部分结果截图 11 5.调试正确的程序清单 12 6.设计心得 16 1. 设计概述 设计题目 打字游戏 设计要求 用LED 点阵显示器LDM-1088AX 来随机显示26 个英文字母,以按 a~z 26 个键来模拟打字,如果在某个字母点亮期间按下相应字母键,表示打字正确并熄灯,记录击中次数。 实现下列功能: 1.用数字按键选择打字练习的速度(即点阵上字母刷新的速度); 2.按空格键开始打字练习; 3.点阵显示的字母以一定速度(如每1 秒或2 秒换一个字母)刷新,打字需在该字母的点亮期间进行才算有效; 4.若在某个字母的出现时间内未有打字动作,则该次打字失败,屏幕上显示“超时”; 5.若一次打字错误,屏幕上显示“错误”,并且在该字母未被更新之前还可以进行第二次、第三次…打字动作; 6.每次打字正确,屏幕上显示“正确”,微机发出一次短暂的鸣响,并将灯全部熄灭,分数加1; 7.按ESC键退出打字过程,显示所得的分数; .退出后屏幕上显示继续游戏的提示。 设计方案 设计方案选择与讨论 (1)本课程设计通过对8253 的设置,使之产生一定频率的波形,将该波形输出到中断口IRQ。每次进入中断都刷新LED点阵上的字母显示,从而控制打字练习的速度。通过改变8253的计数初值可以改变速度。 (2)8253 通道1 工作于方式3,输入1MHZ 的时钟,设置分频系数为1000,输出1KHZ 的方波,此输出作为通道0 的输入时钟。通道0 工作于方式3,分频系数为 用户输入的速度等级×1000。 [注:速度等级:1---快速 2---中速 3----慢速] (3)将8255 的A 口接到LED 点阵的COL1-8,C 口接到LED 点阵的ROW1-8,每当进入中断,就把在数据段存好的字母的段码送到A 口和C 口,显示相应的字母。 (4) 每个字母都需要分段循环显示,利用人眼的视觉暂留便可看见点阵上显示整个字母。 (5)为避免中断服务程序过长,在写中断服务程序时,只需要把中断标志置1即可,其余操作可在主程序中进行。 (6)在字母显示期间,要不断读取按键输入,直到按键正确或进入下一次中断(即表示该字母的出现时间已经结束),准备出现下一个字母。 (7)在字母显示期间,若读入的按键是错误的,则在屏幕上显示“错误”,并继续显示该字母,等待按键或中断;若未能在字母消失前按下正确的键,则在屏幕上显示“超时”,并显示下一个字母;若在字母消失前按下正确的键,则在屏幕上显示“正确”,往A 口和C 口输出00H,使字母消失,分数加1,并准备显示下一个字母。 (8)在字母显示期间,若按键输入是ESC键则结束本次游戏。每次游戏结束后进入等待按键的状态—-按ESC键退出程序,按空格键则开始下一次游戏。 2. 硬件说明 8255A介绍 8255A是Intel公司生产的为x86系列CPU配套的可编程并行接口芯片,也可以用于其他微处理器系统中。通过对它进行编程,芯片可工作于不同的工作方式。在微型计算机系统中,用8255A作接口时,通常不需要附加外部逻辑电路就可直接为CPU提供数据通道,因此得到了极为广泛的应用。 1. 8255A内部结构 8255A的内部结构框图如上图所示,其内部由以下四部分组成。 (1) 端口A、端口B和端口C 端口A、端口B和端口C都是8位端口,可以选择作为输入或输出。还可以将端口C的高4位和低4位分开使用,分别作为输入或输出。当端口A和端口B作为选通输入或输出的数据端口时,端口C的指定位与端口A和端口B配合使用,用做控制信号或状态信号。 (2) A组控制和B组控制部件 这两组控制部件有两个功能:一是接收来自芯片内部数据总线上的控制字;二是接收来自读写控制逻辑电路的读/写命令,以此来决定两组端口的工作方式和读/写操作。 (3)数据总线缓冲器 它是一个双向三态的8位数据缓冲器,8255A正是通过它与系统数据总线相连。输入数据、输出数据、CPU发给8255A的控制字都是通过该部件传递的。 (4) 读/写控制逻辑电路 读/写控制逻辑电路的功能是负责管理8255A的数据传输过程。它接收CS及来自地址总线的信号A1、A0(在8086总线中为A2、A1)和控制总线的信号RESET、WR、RD,将它们组合后,得到对A组控制部件和B组控制部件的控制命令,并将命令送给这两个部件,再由它们完成对数据信息,状态信息和控制信息的传输。 2. 8255A的工作方式 8255A共有三种工作方式: 1.方式0为基本输入/输出方式,方式0下,可供使用的是两个8位口(A口和B口)及

文档评论(0)

chemcary + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档