- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
打字练习程序设计
课程设计任务书
学生姓名: ** 专业班级: 电信0802
指导教师: ** 工作单位: 信息工程学院
题 目:打字练习程序设计
初始条件:
具备数字电路的理论知识;具备微机原理的理论知识和实践能力;熟悉汇编语言编程技术;熟悉80X86的CPU结构和指令系统;熟悉相关常用接口电路的设计使用方法。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1、随机显示一段字符(可含有字母和数字)
2、根据屏幕显示进行打字练习,出错时声响报警
3、打字完成后统计正确率和打字时间
4、程序采用汇编语言在PC机上完成
5、完成符合学校要求的设计说明书
时间安排:
一周,其中2天程序设计,2天程序调试,1天完成课程设计报告书及答辩
指导教师签名: 年 月 日
系主任(或责任教师)签名: 年 月 日
1.设计概述 2
设计题目 2
设计要求 2
设计方案 2
2.硬件说明 3
8255a介绍 3
8253a介绍 3
3.软件流程 9
软件流程图 9
4.部分结果截图 11
5.调试正确的程序清单 12
6.设计心得 16
摘要
本次课程设计是利用微机原理知识和汇编语言来完成打字练习的程序设计,是要求可以显示打字时间,正确率等趣味练习。能够正确运用书上的语句进行简单功能的设计,在不断的编程与检查问题的过程中提高自己的能力,真正达到学习知识的目的。对典型的微机应用系统进行设计画出系统结构框图、系统接线图用所进行典型的程序设计上机进行调试。8255A是Intel公司生产的为x86系列CPU配套的可编程并行接口芯片,也可以用于其他微处理器系统中。通过对它进行编程,芯片可工作于不同的工作方式。在微型计算机系统中,用8255A作接口时,通常不需要附加外部逻辑电路就可直接为CPU提供数据通道,因此得到了极为广泛的应用。
8253A是可编程定时计数器,它是Intel公司专为x86系列CPU配置的外围接口芯片。它在微机系统中可用作定时器和计数器。定时时间与计数次数由用户事先设定。
关键词:汇编语言、8255A、8253A
1. 设计概述
设计题目
打字练习程序设计
设计要求
1、随机显示一段字符(可含有字母和数字)
2、根据屏幕显示进行打字练习,出错时声响报警
3、打字完成后统计正确率和打字时间
4、程序采用汇编语言在PC机上完成
5、完成符合学校要求的设计说明书
用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)在字母显示
文档评论(0)