- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理计时器
信 息 工 程 学 院
课 程 设 计 报 告
设计题目:
名 称:
班 级:
姓 名:
学 号:
设计时间: 至
指导教师:
评 语:
评阅成绩: 评阅教师:
一、课程设计的性质和目的
通过课程设计,进行程序设计方法和技能的基本训练,巩固在课堂上学到的有关软件程序设计的基本知识和基本方法,硬件电路的设计等,通过实际动手能力的培养,进一步熟悉汇编语言的结构和使用方法,掌握软硬结合的控制程序设计,达到能独立阅读、编制和调试一定规模的汇编语言程序的水平。
二、课程设计的要求
1、遵循模块化、结构化的程序设计方法。
2、要求程序必须正确。
3、程序简明易懂,多运用输入输出提示,有出错信息及必要的注释。
4、要求程序结构合理,语句使用得当。
5、适当追求编程技巧和程序运行效率。
三、主要仪器设备及软件
PC机、MASM汇编软件、绘图软件及仿真等。
四、课程设计题目及要求
计时器:
要求:(1)用字符构成的大字显示分、秒、十分之一秒;(2)正计时能够用键盘控制起
动、停止、清0;(3)倒计时能够用键盘设置初值、控制启动、减到0自动停止。
五、课题分析及设计思路
课题分析:
我们所要设计的计时器,它的主要作用就是既能产生正计时功能,又能产生倒计时功能,
而且正计时的时候能够用键盘控制启动、停止、清0;倒计时的时候能够用键盘设置初值、控制启动、减到为0自动停止。
设计思路:
在主程序中,通过先检查键盘是否有输入,如果没有输入,则跳过检查键盘输入的键
值的程序,如果有输入则比较输入为“S”或“s”键,“P”或“p”键,“G”或“g”键,
“C”或“c”键,“ESC”键中的哪个键,进而执行相应键值对应的实现该功能的程序,达
到开始,暂停,继续,清零,退出的功能。考虑到更加直观的显示计时器的计时功能,让其显示的时候将百毫秒和十毫秒位也显示出来,使计时功能更加准确。所以在设计计时器的计时最小单位时,就要使中断频率设置为100Hz,即10ms 一次中断。于是显示的计时单位就是“时:分:秒:十毫秒”。同时设置光标位置使其显示在屏幕中央。当十毫秒位超过9 时候,要对百毫秒位进行加1 操作,如果百毫秒位超过9 时,要对秒位进1,当秒位超过9 时,对十秒位进1,如果十秒位超过5 时,才对分钟位进1,分钟位超过9 时,对十分钟的位进1,如果十分钟的位的超过5 时,对小时位进1。小时位的进位设计就要考虑到小时最多24 的特殊性了,所以设置一个变量,在小时位加1 的同时给它也加1,如果这个变量加到了24 则重新开始计时,此时再把该变量的置零。为了使计时器的显示界面更加直观更加清楚,所以可以在int 10h 的情况下将AH 赋值为0,同时置AL 为10H 将显示的方式设置为640×350 彩色图形,而且为全屏显示,同时颜色通过在int 10H 的情况下将AH 赋值的为0BH,同时置BL 为04H 可以将屏幕背景颜色设置为红色,这样计时器会更加醒目。
六、程序主要流程图
1、正计时流程图如下:
2、 倒计时流程图如下:
七、程序主要代码与分析(关键代码要有注释):
正计时程序:
data segment
hou1 db 0
hou2 db 0
mw db :
min1 db 0
min2 db 0
m db :
sec1 db 0
sec2 db 0
m2 db :
msec1 db 0
msec2 db 0
count equ $-hou1
h db 0
sail db Copyright by yangfan.
hello db Welcome to use the calculagraph of sail.
tishi db s:start p:pause g:continue Esc:exit c:clear
data ends
code segment
assume cs:code,ds:data
start:
mov ax, data
mov ds, ax
mov ah,01h ;置光标类型,不显示光标
mo
文档评论(0)