- 14
- 0
- 约 16页
- 2016-08-28 发布于河南
- 举报
作息时间系统
信息科学与技术学院
微机原理与接口技术课程设计
课题名称: 作息时间控制系统
学 生 姓 名: 罗浚尹
学 号: 2009082236
专业 、年级: 计科09-2
指 导 教 师: 刘恩博
时 间: 2012/1/12
1、题目及要求:
1.1题目:作息时间控制系统
1.2要求:
①能显示时间(时、分、秒)
②并在规定的作息时间给出闹钟信号
③并可以手动输入作息时间表
扩展功能:实现远距离控制
2、功能设计:
2.1、.功能模块:
主程序模块main ———主要包括调用其他函数和主窗口的实现
闹钟模块setRingTime ——— 简单初始界面,要求用户输入所设定的作息时间。
调用系统时间模块(GetTime)————使用dos功能调用(int 21H)中的2ch中断截取系统时间,再调用显示时间的子程序把时间显示出来(例如显示当前时间为 16:30:45 并且如果时间数少于两位数就要在其前面加0后显示出来如 04:07:03);
延时模块(aSecond)————利用端口61H中的PB4每15.08微秒触发一次的特点,通过适当的循环次数进行循环从而实现延时1秒钟;
刷新模块(TIME)————在延时后再循环执行步骤1从而实现时间每一秒的刷新,在屏幕上不断显示当前的时间
宏的作用:
清屏(Clear)———— 用于按要求清理屏幕。(不同颜色)
定位(Dingwei)———— 用于移动光标位置,以便按要求输出。
输出(Xianshi)———— 用于程序中的字符输出。
2.2、.功能图:
3、详细设计:
3.1、设计方法:
3.1.1、显示系统时间
①使用dos功能调用(int 21H)中的2ch中断截取系统时间,再调用显示时间的子程序把时间显示出来(例如显示当前时间为 16:30:45 并且如果时间数少于两位数就要在其前面加0后显示出来如 04:07:03);
②利用端口61H中的PB4每15.08微秒触发一次的特点,通过适当的循环次数进行循环从而实现延时1秒钟;
③在延时后再循环执行步骤1从而实现时间每一秒的刷新,在屏幕上不断显示当前的时间;
3.1.2、设置闹铃时间与输入时的容错处理方法
①在数据段定义好字型变量hour、minute分别用于存放响铃时的小时数与分钟数;
②设置闹铃时间由于形式为 12:45(小时:分钟) 为了方便进行容错处理,可以分别用一段代码实现每一位数的输入,总共需要输入五位数字。例如,输入前两位的小时数时,在输入第一位时判断输入的是否是从0到2范围里的一个数字,如果不是就显示错误信息并停止程序的运行;在输入小时的第二位数时判断输入的是否是0到9范围里的一个数字,如果不是就显示错误信息并停止程序的运行;在输入第三位时(应该是冒号)再判断是否是冒号,如果不是就显示错误信息并停止程序的运行;输入第四位(即分钟数的第一位)判断输入的是否是0到5数字里的一个,如果不是就显示错误信息并停止程序的运行;输入最后一位判断是否是0到9的范围中的一个数字,如果不是就显示错误信息并停止程序的运行等等;
③每次输入如果确定输入无误就使用书本中处理输入一个十进制数常用的方法把输入的数存储到寄存器中,再把它存入相应的变量中如小时数存到变量hour中,分钟数存入变量minute中;
3.1.3、当到达闹铃时间时响铃
①每次在截取系统时间前先把寄存器bx清零,截取时间后把截取到的系统时间分别与变量hour与变量minute进行比较,如果相等,就使寄存器bx加1,这样再执行完截取系统时间后检查bx是否为2,如果是2就表示已经到达设定好的闹铃时间,就跳出显示时间的死循环,跳到响铃的循环去;
②响铃是使用dos功能调用(int 21H)中的2H, 同时把7H放到dl寄存器中,执行一次后延时三秒(延时的方法同显示时间时所用延时方法一样)再执行一次共循环执行40次从而实现了响铃几秒钟的功能;
3.2、各功能模块及流程图
main 函数
main proc
从键盘接收输入的响铃时间并存储在相应变量中
您可能关注的文档
- 什么是硬盘坏道.doc
- 什么是边缘跟踪.docx
- 什么是黄金比例.ppt
- 什么是逻辑分区.docx
- 仁爱版 初二英语半期测试卷.doc
- 仁爱英语.doc
- 介词 (教案).doc
- 从哈密尔顿图到旅行货郎问题.doc
- 代谢能问题.doc
- 仿真图形.docx
- 《人工智能图像识别项目实践》课件 项目四 宠物管理猫狗检测.pdf
- 商务数据分析与应用 课件 12.1商务数据分析(高质量分析报告的撰写要求).pptx
- 数控编程与加工 课件 项目二 传动轴零件数控编程与加工.pptx
- 商务数据分析与应用 课件 10.1商务数据分析的价值(商品分析实战).pptx
- 《轨道作业车运用与规章》课件 项目5 《铁路技术管理规程(高速铁路部分)》考点解析.pptx
- M32CubeIDE嵌入式开发教程 课件 chap12DMA.pptx
- 数控编程与加工 课件 项目一 数控车床编程与操作基础.pptx
- 《轨道作业车运用与规章》课件 项目6-任务4 移动信号及手信号考点原文对照与案例解读.pptx
- 10.4 电能质量扰动分类结果分析.pptx
- M32CubeIDE嵌入式开发教程 课件 chap09实时时钟与定时器.pptx
原创力文档

文档评论(0)