微机系统综合课程设计

上传人:夏** 文档编号:510625290 上传时间:2022-11-01 格式:DOCX 页数:25 大小:192.52KB
返回 下载 相关 举报
微机系统综合课程设计_第1页
第1页 / 共25页
微机系统综合课程设计_第2页
第2页 / 共25页
微机系统综合课程设计_第3页
第3页 / 共25页
微机系统综合课程设计_第4页
第4页 / 共25页
微机系统综合课程设计_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《微机系统综合课程设计》由会员分享,可在线阅读,更多相关《微机系统综合课程设计(25页珍藏版)》请在金锄头文库上搜索。

1、课程设计报告课程设计名称:微机系统综合课程设计课程设计题目:模拟洗衣机动作院(系):计算机学院专业:计算机科学与技术班级:14010101学号:姓名:指导教师:紫学博完成日期:2014.7.4沈阳航空航天大学程设计报告目录第 1章 总体设计方案 11.1 课程设计的内容和要求 11.1.1课程设计的内容 11.1.2课程设计要求 11.2 设计原理 11.3 设计思路 11.3.1提出方案 21.3.2 方案论证 21.4 实验环境 2第 2章 详细设计方案 32.1 硬件电路设计 32.2 主程序设计 32.3 功能模块的设计与实现 52.3.1初始化 8255 和 8279 模块 52.3

2、.2进水子程序模块的设计与实现 62.3.3正转子程序模块的设计与实现 72.3.4 延时函数 delay 8第 3 章 结果测试及分析 93.1 结果测试 93.2 结果分析 9参考文献 10附 录 11第 1 章 总体设计方案1.1 课程设计的内容和要求此次课程设计的题目为模拟洗衣机动作。包括模拟洗衣机的进水过程,模拟 洗衣机滚筒的滚动过程,以及实现提示用户洗衣的开始和结束的功能。 1.1.1课程设计的内容利用8255A及8279芯片模拟洗衣机动作。在数码管上应该能够显示如下信息: 洗衣机的正转,反转,进水,出水,洗衣,清洗以及脱水等,洗衣工作结束给出 明确提示,比如,8 个数码管全部显示

3、为 8。运行程序模拟以下过程:1)进水-正转-延时-反转-延时-正转,循环 3 次以上出水;2)正转-延时-结束;1.1.2课程设计要求1)独立完成课程设计任务; 2)通过老师当场验收;3)交出完整的课程设计报告。1.2 设计原理利用 8255A 及 8279 芯片,实现模拟洗衣机洗衣的运动过程。用汇编语言编写 模拟洗衣机程序,并结合 AEDK 实验箱控制并显示洗衣机的运行过程:按 0 表示开 始运行洗衣过程并开始进水,同时四个单色灯顺序点亮最后全部点亮,然后 8 个 数码管全部显示为 0 表示进水结束;然后再按 1 表示洗衣过程开始进行,首先双 色灯正转三次,然后反转三次,至此一个循环结束,

4、再按照这个过程再进行三次, 洗衣过程结束;接着四个单色灯顺序熄灭,最后全部熄灭表示洗衣机出水结束, 此时双色灯正转三次表示对衣物进行脱水;最后 8 个数码管全部显示为 8 表示整 个洗衣模拟过程结束。1.3 设计思路利用 LCA88ET 应用软件编写汇编语言程序,并结合 AEDK 实验箱上的 8255 和 8279 芯片设计电路,实现模拟洗衣机运动过程(进水-正转-延时-反转-延时-正 转等功能)。1.3.1 提出方案利用 8279 芯片设置 0 为进水键,1 为开始键;利用 8255 芯片控制双色彩灯 模拟洗衣机的正转和反转,单色灯模拟实现进水脱水的过程,数码管显示八个 0 表示洗衣工作的开

5、始, 八个 8 表示洗衣机工作结束。1.3.2 方案论证利用 8279A 芯片的键盘输入来实现洗衣机的进水、正反转(0 键为开始进水, 1 键为滚筒开始旋转),用 8279A 的 LED 显示来实现告知用户洗衣机洗衣的开始和 结束(显示八个 0 表示洗衣的开始,显示八个 8 表示洗衣的结束)。利用 8255A 的 B 口作为输出来模拟洗衣机的进水过程(四个单色灯依次点亮,最后全部置亮), 实现过程为:首先将1000 取反输出,点亮第一个灯,接着依次调用逻辑右移语句 实现单色灯依次点亮,表示进水结束。然后按 1 键,表示开始进行洗衣,利用 8255A 的 A 口作为输出来模拟洗衣机的正反转过程,

6、同理首先置亮第一个灯然后依次调 用逻辑右移语句,实现双色灯顺时针依次点亮。调用 loop 语句使其循环三次,然 后正转子程序调用反转子程序同理实现双色灯的三次逆时针循环点亮。此时再调 用 loop 语句使整个正反转过程执行三次,表示洗衣过程结束。然后调用出水程序, 与进水子程序同理。最后调用正转子程序表示对衣物进行甩干。最后八个数码管 全部显示为 8 表示整个洗衣过程结束。经实际连线操作,所得现象与预期的相一 致,方案成功。1.4 实验环境硬件环境:AEDK实验箱,PC机。软件环境:LCA88ET应用软件。第 2 章 详细设计方案2.1 硬件电路设计硬件电路包括 8086 与 8255 和82

7、79 两芯片连接构成,硬件电路连线图如图2.1 所示。图 2.1 硬件电路连线图2.2 主程序设计程序首先要对 8255 和 8279 进行初始化,然后按下开始键0,洗衣机开始 进水,接着按下开始洗衣键 1,此时依次调用正转子程序、反转子程序、出水 子程序、正转子程序,最后模拟洗衣机工作结束。主程序流程图如图 2.2 所示。图 2.2 主程序流程图2.3 功能模块的设计与实现对 8255A 和 8279 芯片进行初始化后,利用 8279 芯片的键盘输入功能输入开 始,利用 8255A 控制单色灯、双色灯分别显示洗衣机进水、正反转,利用数码管 显示洗衣工作的开始和结束。2.3.1初始化8255和

8、 8279 模块1、8255芯片是一种可编程的并行接口芯片,它有3个8位数据端口,既A 口、B 口、C 口。首先初始化8255,设置其工作方式,其A 口、B 口,C 口的 端口地址分别为200H、201H、202H,控制端口地址为203H。从控制口 203H输 入控制字80H,表示A、B、C三个端口均可作为输出端口,本程序中采用A 口 和B 口作为输出端口,利用8255A的B 口作为输出来模拟洗衣机的进水过程(四 个单色灯依次点亮,最后全部置亮),实现过程为:首先将1000取反输出,点 亮第一个灯,然后依次调用逻辑右移语句实现单色灯依次点亮,表示进水结束。 然后,利用8255A的A 口作为输出

9、来模拟洗衣机的正反转过程,同理首先置亮 第一个灯然后依次调用逻辑右移语句,实现双色灯顺时针依次点亮。2、8279 芯片是一种通用的可编程序的键盘、显示接口器件,单片器件就 能够实现键盘输入和显示控制两种功能。 首先初始化 8279,设置其工作方式 奇地端口(212H):输入的信息是命令,输出的信息是状态字;偶地址端口(210H): 输入和输出的信息是数据。从奇地址端口 212H输入控制字,00H表示8位字符 显示,左端输入,编码扫描键盘,双键锁定。38H表示时钟分频为24分频,0C2H 用来置空FIFO存储器,0D0H用来清空显示RAM。从奇地址端口 212H读入状态 字,与80H相测试检测显

10、示RAM是否可用,与0FH相测试检测是否有键按下。 从偶地址端口 210H读出数据,经查表便可将数据在LED数码管上显示出来。LED 数码管是共阴极的,使哪段亮加高电平即可。本程序中采用8279A的LED显示 来实现告知用户洗衣机洗衣的开始和结束(显示八个0表示洗衣的开始,显示 八个 8 表示洗衣的结束),利用其键盘输入功能来实现洗衣机的进水、正反转(0 键为开始进水, 1 键为滚筒开始旋转)。2.3.2进水子程序模块的设计与实现关于进水子程序,首先对CX赋值为4, AL中置入01111111B,对AL取非以 后输出到201端口,此时第一个单色灯被置亮。然后让CX自减,若不为0,则对 AL取非

11、后循环右移,再取非输出到201端口。对AL重复这样的操作直至CX减为 0,然后再将AL中置为00001111B,输出。这样就实现了用单色灯模拟进水过程。 流程图如图 2.3 所示。图 2.3 进水子程序流程图2.3.3正转子程序模块的设计与实现对于正转子程序,首先对CX赋值为3,接着对CX进行入栈保护,然后再对 CX赋值为4, AL中置入01111111B,将AL赋值到CX,再让CX自减,若不为0,则 对 AL 取非后循环右移,对 AL 重复这样的操作直至 CX 减为 0;最后再对 CX 进行 出栈保护,表示此过程循环执行 3 次。正转子程序完成后继续调用反转子程序。 正转子程序功能实现如图

12、2.4所示。图 2.4 正转子程序流程图注释:出水子程序功能实现与入水子程序实现基本相仿。反转子程序功能实 现与正转子程序实现过程基本相仿,在报告中就不单列为一个程序模块。 2.3.4 延时函数 delay延时函数的主要用途是在程序运行过程中相应地产生延时,增加程序的可读 性,提高程序的执行性。进入延时函数DELAY后,用寄存器CX来存储用来循环的值(十六进制)OFFFFH, 因为在此之前,在寄存器CX中已经分别在低八位和高八位送入了用来存储当前饮 料瓶的空瓶数量和满瓶数量,所以需要对此加以存储保护,即将寄存器CX压入栈 中。将CX进行自减,然后判断CX是否为0,如果不为0,则继续自减,直到为

13、0。 因为在运行的过程中发现延时的时间比较短,不方便检查,达不到好的效果,所 以在执行上述的语句后,接着执行几条NOP空指令语句,起到了延时的作用。 完成延时以后,要把栈中存储的当前空瓶数量值和满瓶数量值出栈。延时函数 DELAY 的流程图如图 2.5所示。图 2.5 延时函数流程图-8-第 3 章 结果测试及分析3.1 结果测试程序编译成功后开始执行,按下开始键(0 键)之后,洗衣机开始进水,四 个单色灯依次点亮最后全部置亮表示进水结束,同时八个数码管全部显示为 0, 表示洗衣机开始工作。此时按开始转动按键(1 键),洗衣机滚筒开始正转,在试 验箱上的现象是四个双色灯顺时针依次点亮,然后是依

14、次逆时针依次点亮,如此 循环三次,表示洗衣过程结束。此时调用出水程序,现象为单色灯依次置灭,最 后全部置灭,表示出水结束,随后执行正转程序,表示对衣物进行甩干,现象为 双色灯顺时针依次点亮。最后八个数码管全部显示为8,表示洗衣过程全部结束。 所得结果与预期的相一致。3.2 结果分析对于上述的运行结果和操作过程,达到了课程设计任务书中的要求。即本课 设要求根据洗衣机原理模拟洗衣机洗衣过程,按下 0键,程序执行开始功能。数 码管显示 8 个 0,表示开始,进水灯亮。当单色灯全亮,表示进水完毕。按下 1 号键,洗衣机开始转动,正转3 次,反转3 次,循环3 次自动出水;单色灯全灭, 表示出水完毕;接

15、着调用脱水程序,最后数码管显示 8 个 8,洗衣机结束工作。 所得现象与预期的相一致,达到了课程设计的要求,实现了对洗衣机运作过程的 模拟。参考文献1 龚尚福.微机原理与接口技术 M. 西安: 西安电子科技大学出版社, 20032 王中民.微型计算机原理 M . 西安: 西安电子科技大学出版社, 20033 葛桂平.微机原理学习与实践指导 M . 北京:清华大学出版社, 20104 周杰英.微机原理、汇编语言与接口技术 M. 北京:人民邮电出版社, 20115 沈美明,温冬婵.IBM-PC汇编语言程序设计M北京:清华大学出版社,20016 张雪兰. 汇编语言程序设计 M 北京: 清华大学出版社, 20067 马春燕. 微机原理与接口技术:基于 32 位机 M. 北京:电子工业出版社,20078 马瑞芳. 微机原理与接口技术要点 M. 西安:西安交通大学出版社,20069 龚义建等微机原理与

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号