




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 智能化电子表课程设计说明书 一、 设计任务: 有十分、分、十秒和秒的计时功能,并可以在数码管上显示。 2 电子表具有启动键、停止键、复位键,而且可以随时通过键盘进行各位时间的设置。 二、 设计原理: 本程序的主要设计原理是用主程序完成键盘按键的扫描,实现计时结果的数码管显示,实现秒与分之间的转换。通过判断键盘按键调用相应功能程序段以实现相应功能,即实现了启动、暂停、复位功能,以及通过键盘进行十分、分、十秒、秒时间的手动设置功能。 初始化字 由此,本设计中的 8254 的初始化为: X, ;初始化 8254 工作方式 L,36H ;计数器 0,方式 3 X,X, ;装入计数初值 L,00H ;18432 分频 X,L,54H X,2 初始化字 由此,本设计中的 8255 的初始化为: ;初始化 8255 工作方式 1H ;方式 0, A 口、 B 口输出, C 口低 4 位输入 L 3 三、 电子表软件流程图 N Y N Y 程 序 初 始 化 判断小键盘是否有键按下 上面是不是有键按下 若按键值为 3,则要 转 至若按键值为 1,则要转至理程序 若 按 键 值为 2,则要转至返回 束 调 用 子 程 序 开 始 若按键值为 8、9、 0A、 0B、0C、 0D、 0E、0F,则要转至时间设置处理程序 4 N Y N Y N Y N Y 四、 电子表硬件接线图 7 6 5 4 3 2 1 0 8255 B C D E 键 盘 F 及 数 G 码 管 显 示 开 始 是否到 10? 秒是否到 6? 位分是否到 10? 位分到 6? 加 1 清零, 秒加 1 秒清零, 位分加 1 位分清零, 位分加 1 位秒分清零 调用 态显示程序 结 束 5 总 线 五电子表软件代码 ;*根据 置信息修改下列符号值 * 0 ;片选 应的端口始地址 0* 6 4 2 8254 单 元 1 R S 6 0H*4 ;8255 的 A 口地址 1H*4 ;8255 的 B 口地址 2H*4 ;8255 的 C 口地址 3H*4 ;8255 的控制寄存器地址 0H*4 ;8254 计数器 0 端口地址 1H*4 ;8254 计数器 1 端口地址 2H*4 ;8254 计数器 2 端口地址 3H*4 ;8254 控制寄存器端口地址 W 256 ) B 36H,56H,67H,77H,77H,79H ,59H,71H ;键值表, 0 F 对应的 7 段数码管的段位值 B 0,0,0,0 B 3 ;启动键 B 1 ;停止键 B 2 ;清 0 键 B 8 ;设置十位分钟加 B 9 ;设置个位分钟加 B 0 ;设置十位秒加 B 0 ;设置个位秒加 B 0 ;设置十位分钟减 B 0 ;设置个位分钟减 B 0 ;设置十位秒减 B 0 ;设置个位秒减 B 0 ;8254口状态键 B 0 B 0 B 0 B 0 B 0 B 0 B 0 B 0 7 S:S:X,S,S,X, ;初始化 8254 工作方式 L,36H ;计数器 0,方式 3 X,X, ;装入计数初值 L,00H ;18432 分频 X,L,54H X, ;初始化 8255 工作方式 1H ;方式 0, A 口、 B 口输出, C 口低 4 位输入 L ;显示刷新 ;清屏 ;扫描按键 ;有键按下则跳置 ;判断 盘是否有按键按下 16H ;无按键则跳回继续循环,有则退出 1100010B ;设置回读命令 8 L ;读 0 端口状态控制字 X L,80H L,80H L,80H ;百分秒到 10,十分秒加 1 ;十分秒秒到 10,个位秒加 1 ;个位秒秒到 10,十位秒加 1 6H ;十位秒到 6,清零 ;分钟个位到 10,十位加 1 9 6H ;十位分到 6,清零 I,0 ;存储时间 L,位分 I,I L,位分 I,I L,位秒 I,I L,位秒 I,I I,0 I ;返回到 21H ;显示刷新 ;清屏 ;再次扫描按键 ;有键按下则跳置 ;否则 跳回开始继续循环 H,00H ;设置当前检测的是第几列 H ;选取一列,将 一个置 0 10 L ;读 于判断是哪一行按键闭合 X L,01H ;是否为第 1 行 ;不是则继续判断 0H ;设置第 1 行第 1 列的对应的键值 2: L,02H ;是否为第 2 行 ;不是则继续判断 4H ;设置第 2 行第 1 列的对应的键值 3: L,04H ;是否为第 3 行 ;不是则继续判断 8H ;设置第 3 行第 1 列的对应的键值 4: L,08H ;是否为第 4 行 ;不是则继续判断 ;设置第 4 行第 1 列的对应的键值 X ;显示刷新 ;清屏 ;扫描按键,判断按键是否弹起 ;未弹起则继续循环等待弹起 L ;将第 1 列的值加上当前列数,确定按键值 L, ; 判断是否为开始键 ; 判断是否为停止键 L,11 ; 判断是否为清零键 L, K: ; 判断是否为十位分钟加设置键 L, ; 判断是否为个位分钟加设 置键 L, ; 判断是否为十位秒加设置键 L, ; 判断是否为个位秒加设置键 L, ; 判断是否为十位分钟减设置键 L, ; 判断是否为个位分钟减设置键 L, ; 判断是否为十位秒减设置 键 L,12 ; 判断是否为个位秒减设置键 L, ;当前 检测的列数递增 H L,08H ;检测是否扫描到第 4 列 ;是则跳回到开始处 ;没检测到第 4 列则准备检测下一列 L ;扫描是否有按键闭合子程序 H ;将 4 列全选通, 0 L N X ;读 ;取出 反值 ;清除数码管显示子程序 ;段位置 0 即可清除数码管显示 0H L ;显示键值子程序 X ;以缓冲区存放的键值为键值表偏移找到键值并显示 I,X,X,1 I,5 L 13 X L ;设置 通一个数码管 ;取出缓冲区中存放键值 0X X R 0H L ;将键值作为偏移和键值基地址相加得到相应的键值 L ;写入数码管 A ;取下一个键值 L L,01H ;判断是否显示完? ;显示完,返回 L ;未显示完,跳回继续 ;软件延时子程序 X 01: 02: 1 设置十位分钟加子程序 L,14 I,0 I,设置个位分钟加子程序 L,I,1 I,设置十位秒加子程序 L,I,2 I,设置个位秒加子程序 L,I,3 I,设置十位分钟减子程序 L,I,0 I,设置个位分钟减子程序 15 L,I,1 I,设置十位秒减子程序 L,I,2 I,设置个位秒减子程序 L,I,3 I,电子表复位子程序 0 0 0 0 I,0 I,0 I I,0 I I,0 I I,0 、 心得体会 16 在设计刚开始时, 我们只是知道要用 8254 完成计数,用 8255 与数码管单元完成显示功能,但是具体怎么实现的还不是很清楚。 在接下来的一小段时间里,我们 觉得无从下手,但通过自己耐心搜集资料,向老师和同学请教,慢慢理出了头绪,也有了自己的设计思想和设计框架,并有了一定的实现方法。 对于设计题目来说,并非那么得复杂,但要设计者将所学转换成相应的实际应用却并非一件容易的事情。本设计题目的设计思想是简单的,只需要使用 8254完成计数,用 8255 与数码管单元完成显示功能,并通过自己的理解附加一些功能片段来完成电子表的人性化功能设计,如电子表的校准、电子表的开始、停止、清零等功能 。 在课程设计过程中,我深刻地体会到:微机原理与接口技术这 门课程对于我们的要求不仅限于对书本知识的理解,更重要的是对书本知识的运用。除此之外,我们应该在学习过程中充分发挥自己的想象力和创新意识,将对书本知识的理解与我们的创新意
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 京东尚科合同样本
- led灯具采购合同标准文本
- 临时农业种植合同样本
- 关于路灯合同样本
- 会员代理招募合同样本
- 共用线路三方协议合同样本
- 共建共用仓库合同样本
- 上海房屋预售合同样本
- 了解不同国家的调酒文化:试题及答案
- 深入分析2024年国家电网考试试题及答案
- 最全的冷轧知识材质牌号分类及生产工艺
- 易制毒、易制爆化学品安全培训
- 美女金喜善写真集
- 入伍简历当兵简历.doc
- 国家旅游局新版团队出境旅游合同模板
- 4S店三表一卡标准模板
- 南京地铁四号线风井主体结构施工方案
- 高中生物竞赛 第九章 染色体畸变课件
- 四年级下册《小数的意义和性质》整理和复习
- 土壤污染修复技术对比分析
- 3万高炉转炉混合煤气柜技术规程
评论
0/150
提交评论