微机原理及应用
课程设计
设计题目:指针式的屏显电子钟
目录
一、 简介 ..................................................................................................1
二、 课设基本原理 ..................................................................................2
三、 程序流程和编程实现 ......................................................................2
四、 测试方案和测试结果 ....................................................................32
五、 基本、扩展和提高设计系统运行结果........................................32
六、 分析与总结 ....................................................................................33
1
一、简介
1.1 实验目的
1.学习系统驻留的方法。
2.了解 BIOS 中时间参数的调用方法。
3.了解屏幕画图的方法,学会用汇编语言通过系统调用设计 GUI 界面
对于本次应用的科目微机原理与接口技术来说,因为需要应用 Win32 汇编语言技术来编写代
码实现功能,所以要掌握这门语言。并且要用到 Windows API 接口的许多函数,所以要掌握
一部分函数的调用方法及实现的功能。检验和提高汇
编语言程序设计能力,和微机原理与接口技术应用方面的分析问题与解决问题的
能力,掌握 32 位汇编语言,完成软件的设计要求、编码和测试等。
1.2 实验内容及要求
1.在屏幕上显示一个适当大小的椭圆形界面,椭圆形轨道上,均匀地分布着 60 个“点”,
代表 1 秒~60 秒的位置,凡是 5 倍数的“点”应当比其他的“点”稍大。
2.以椭圆的中心为轴,画一条斜线代表“秒针”,采用定时中断的方式,每过
一秒钟,秒针移动一个位置,同时系统发出“嘀一嗒”的声响,如果相应的“点”能够 改
变颜色,则动感更强。
3.按下“Esc ”键之后,结束演示。
4.进一步设计要求
要求时钟外观立体感强。
(设计提示:利用 Windows API 来获取系统时间、定时并完成绘图。可采用混合编程的技术完
成,但必须以汇编为主实现核心功能)
1.3 实现情况
1.显示一个圆形电子钟,凡是 5 倍数的“点”比其他的“点”稍大
2.用不同颜色、长短、粗细来区别时针、分针、秒针
3.表盘上用数字标出整点时刻
4.表盘中心可以显示年月日
5.过一秒钟,秒针移动一个位置,同时系统发出“嘀一嗒”的声响,相应的“点”能够改变
颜色
6.按下“Esc ”键之后,结束演示。
1.4任务分工
杨梦瑶:找码,调码,答辩
丁静静:找码,调码,写报告
2
二、课设基本原理
总体来说:
首先要声明一个窗口类,并且获得句柄;
然 后 要 注 册 窗 口 类 , 设 置 各 种 属 性 , 其 中 最 重 要 的 是 IpfnWndProc , 它 指 出
DispatchMessage 函数中把窗口消息发到哪里去;
接下来就该是建立和显示窗口了,这时 UpdateWindow 函数发送一个 WM_PAINT 消息来更
新指定窗口的客户区,得到一个返回消息,进入消息循环;
窗口过程根据消息标识执行不同的操作;当取得 WM_QUIT 消息,退出消息循环,结束进
程。
窗口过程里通过设置一个一秒钟的定时器,到时间就重新绘制整个窗体,就这样绘制出
一帧帧的画面,连贯起来就仿佛钟表在动。
具体来说:
首先要从当前窗口尺寸来确定时钟的大小,得到圆心、半径等关键参数;
然后由圆心、半径和角度来计算坐标绘制表盘、指针和显示数字。
三、程序流程和编程实现
3.1 程序流程及分析
1.ShowTimeText proc
函数功能:调用 API 函数获得当地时间(年、月、日、时、分、秒),并将年月日输出到表
盘中央。
API 函数:
3
评论0