微机报告一.docx
- 文档编号:8972660
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:14
- 大小:60.48KB
微机报告一.docx
《微机报告一.docx》由会员分享,可在线阅读,更多相关《微机报告一.docx(14页珍藏版)》请在冰豆网上搜索。
微机报告一
第一章:
1.1实验目的
1.2实验设备与环境
1.3实验内容
第二章:
2.1背景调查
第三章
3.1三种设计方案
3.2实验实际实现
第四章
4.1实验遇到的问题和解决方法
第五章
5.1实验结论与分析
第一章
1.1实验目的:
交通信号灯模拟控制是一个基于实际工程原理,结合文献、现实十字路口交通等得研究,对工程问题进行确定、表述和建模分析,获得最优设计方案,理解并在工程实践中遵守工程职业道德规范,根据实验室实验环境限定条件确定实验方案。
所有知识涵盖本课程中的并行接口芯片、汇编语言程序设计、算法分析、接口地址的确定、外围设备的控制等。
通过此实验可以理解微机系统中接口电路的作用,掌握软件硬件协同工作原理,熟悉微机原理与接口技术的综合应用。
最终达到如下实验目的:
(1)掌握可编程并行接口8255芯片的工作原理
(2)掌握利用并行接口芯片8255实现信号灯控制的硬件设计和软件设计
(3)掌握接口电路及汇编语言程序设计的调试方法
(4)了解PC机和实验系统板的连接原理,理解系统机扩展原理
(5)了解并行接口芯片在工程实践中的典型应用及实现方式。
1.2、实验设备与环境
1.TPC-2003A实验系统1台
2.TPC-2003A实验系统所配套的软件---TPC-2003A集成开发环境1套
3.PC微机1台
1.3、实验内容
设计利用TPC-2003A实验系统提供的8255芯片和信号灯设计实现十字路口交通灯的模拟
控制的硬件连接和程序设计
1.设计要求
(1)通过实际调研了解十字路口交通灯原理,确定实现的算法流程
(2)利用实验系统设计硬件电路,明确8255芯片端口地址
(3)编程实现并调试完成交通信号灯的模拟控制
(4)分析设计方案并比较和实际交通信号灯的技术性能差别
要求限制条件:
如遇到特殊情况,可拨动应急开关,使各项均为红灯,特殊车辆不受红灯限制,使其顺利通过后拨动另一个开关,系统返回继续运行
2.设计目标和性能指标
1.考察一个实际十字交通等路口交通控制,模拟在实验室实现
2.扩展功能:
用LED应倒计时方式显示各路口灯亮时间
3.对于复杂多路口应该如何设计。
例如结合车流、人流等多方因素方案如何确
定、要求实验报告体现
第二章
2.1背景研究
随着计算机科学技术的不断发展,微型计算机得到了广泛的应用,成为人们利用计算机设计和开发各种应用系统的基础。
同时微型计算机接口技术也是一门实践性较强的课程,理论与实践相结合可以更好的掌握知识,这也是这次微机原理课程设计目的。
交通灯是交通安全的关键,已广泛应用于城乡的十字路口,它的有无作为交通安全检查的重要依据,是交通秩序正常进行的有力保障。
十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。
十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。
当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。
它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。
交通灯的时间控制显示,以固定时间值预先“固化”,每次只是以一定周期交替变化。
但是,实际上不同时刻的车辆流通状况是十分复杂的,是高度非线性的、随机的,还经常受人为因素的影响。
采用定时控制经常造成道路有效应用时间的浪费,出现绿灯方向车辆较少,红灯方向车辆积压。
它不顾当前道路上交通车辆数的实际情况变化,其最大的缺陷就在于当路况发生变化时,不能满足司机与路人的实际需要,轻者造成时间上的浪费,重者直接导致交通堵塞,导致城市交通效率的下降。
目前,有一种使用“模糊控制”技术控制交通灯的方法。
能够根据十字路口两个方向上车辆动态状况,自动判断红绿灯时间间隔,以保证最大车流量,减少道口的交通堵塞。
但是却不像定时控制,能用数字显示器显示当前灯色剩余时间,以便于驾驶员随时掌握自己的驾驶动作,及时停车或启动。
本次课程设计以固定的程序实现对交通灯实行控制,没有实现智能化,但智能化是交通控制系统是交通控制系统发展的必然趋势,也是满足日益发展的社会需要。
第三章
3.1三种设计方案
设计方案一:
1.东西方向车辆放行60秒钟。
即东西方向的绿灯和南北方向的红灯同时点亮1分钟。
2.1分钟后,东西方向的黄灯闪烁5秒钟,以警示车辆将切换红绿灯。
此时南北方向仍维持红灯点亮。
3.东西方向的黄灯闪烁5秒钟后,转为南北方向放行20秒钟。
即东西方向的红灯和南北方向的绿灯同时点亮20秒钟。
4.南北方向放行20秒钟后,转为南北方向的黄灯闪烁5秒钟,以警示将切换红绿灯。
此时东西方向仍维持红灯点亮。
5.南北方向的黄灯闪烁5秒钟后,再转为东西方向车辆放行1分钟。
如此循环重复。
程序设计
IOY0EQU0DA00H;片选IOY0对应的端口始地址
MY8255_AEQUIOY0+00H*4;8255的A口地址
MY8255_BEQUIOY0+01H*4;8255的B口地址
MY8255_CEQUIOY0+02H*4;8255的C口地址
MY8255_MODEEQUIOY0+03H*4;8255的控制寄存器地址
STACK1SEGMENTSTACK
DW256DUP(?
)
STACK1ENDS
DATASEGMENT
LADB?
;定义数据变量
LBDB?
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVDX,MY8255_MODE;定义8255工作方式
MOVAL,80H;工作方式0,A口和B口为输出
OUTDX,AL
LOOP1:
MOVDX,MY8255_A;写A口发出的数据,东方向绿灯亮,南方向红灯亮
MOVAL,3CH
OUTDX,AL
MOVDX,MY8255_B;写B口发出的数据,西方向绿灯亮,北方向红灯亮
MOVAL,3CH
OUTDX,AL
CALLDALLY1
L1:
MOVDX,MY8255_A;写A口发出的数据,东方向黄灯亮,南方向红灯亮
MOVAL,0FCH
OUTDX,AL
MOVDX,MY8255_B;写A口发出的数据,西方向黄灯亮,北方向红灯亮
MOVAL,0FCH
OUTDX,AL
CALLDALLY2
MOVDX,MY8255_A;写A口发出的数据,东方向黄灯灭,南北方向红灯亮
MOVAL,30H
OUTDX,AL
MOVDX,MY8255_B;写B口发出的数据,西方向黄灯灭,南北方向红灯亮
MOVAL,30H
OUTDX,AL
CALLDALLY2
LOOPL1
MOVDX,MY8255_A;写A口发出的数据,东方向红灯亮,南方向绿灯亮
MOVAL,0C3H
OUTDX,AL
MOVDX,MY8255_B;写B口发出的数据,西方向红灯亮,北方向绿灯亮
MOVAL,0C3H
OUTDX,AL
CALLDALLY3
L2:
MOVDX,MY8255_A;写A口发出的数据,南方向黄灯亮,东方向红灯亮
MOVAL,0F3H
OUTDX,AL
MOVDX,MY8255_B;写B口发出的数据,北方向黄灯亮,西方向红灯亮
MOVAL,0F3H
OUTDX,AL
CALLDALLY2
MOVDX,MY8255_A;写A口发出的数据,南北方向黄灯灭,东方向红灯亮
MOVAL,0C0H
OUTDX,AL
MOVDX,MY8255_B;写B口发出的数据,南北方向黄灯灭,西方向红灯亮
MOVAL,0C0H
OUTDX,AL
CALLDALLY2
LOOPL2
MOVAH,1;判断是否有按键按下,调用功能号1
INT16H;ROMBIOS功能调用
JZLOOP1;无按键则跳回继续循环,有则退出
QUIT:
MOVAX,4C00H;结束程序退出
INT21H;DOS系统功能调用
DALLYPROCNEAR;软件延时子程序
PUSHCX
PUSHAX
MOVCX,0FFFH
D1:
MOVAX,0FFFFH
D2:
DECAX
JNZD2
LOOPD1
POPAX
POPCX
RET
DALLYENDP
DALLY1PROCNEAR;软件延时子程序,东西方向红灯亮,南北方向绿灯亮
PUSHCX
PUSHAX
MOVCX,1EH
D3:
CALLDALLY
LOOPD3
POPAX
POPCX
RET
DALLY1ENDP
DALLY2PROCNEAR;软件延时子程序,黄灯闪烁(即亮与灭)的时间间隔,
PUSHCX
PUSHAX
MOVCX,02H
D4:
CALLDALLY
LOOPD4
POPAX
POPCX
RET
DALLY2ENDP
DALLY3PROCNEAR;软件延时子程序,东西方向绿灯亮,南北方向红灯亮,
PUSHCX
PUSHAX
MOVCX,0AH
D5:
CALLDALLY
LOOPD5
POPAX
POPCX
RET
DALLY3ENDP
CODEENDS
ENDSTART
方案二:
方案三
3.2实验实际实现
PS:
由于实验准备时间和实现时间有限,实际实验时我们只实现了一个基本的简单的交通灯控制操作。
1.基本功能:
(1)南北路口的绿灯、东西路口的红灯同时亮3秒左右。
(2)南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。
(3)南北路口的红灯、东西路口的绿灯同时亮3秒左右。
(4)东西路口的黄灯闪烁若干次,同时南北路口的红灯继续亮。
(5)返回
(1)依次继续。
2.源程序
CODESEGMENT
ASSUMECS:
CODE
;**********************************工作状态控制字设置
START:
MOVDX,0EC0BH;写控制端口,地址0EC0BH
MOVAL,10010000B;C口方式0输出
OUTDX,AL
;**********************************南北路口绿灯亮,东西路口红灯亮
FIRST:
MOVDX,0EC0AH;写PC口,地址0EC0AH
MOVAL,00100100B;南北绿,东西红,PC口写00100100
OUTDX,AL
;------------------------------两层嵌套实现长延时
MOVCX,0;外层循环送入初值65536
MOVAX,2000H;内层循环送入初值2000H
DELAY1:
DECAX
JNZDELAY1
LOOPDELAY1
;**********************************南北路口黄灯闪烁,东西路口红灯亮
MOVBL,5;BL控制黄灯亮的次数5次
SECOND:
MOVDX,0EC0AH
MOVAL,01000100B
OUTDX,AL;南北黄,东西红
MOVCX,3000H
MOVAX,0100H
LI1:
DECAX
JNZLI1
LOOPLI1
MOVDX,0EC0AH;短延时
MOVAL,00000100B;南北路口黄灯先灭
OUTDX,AL
MOVCX,3000H
MOVAX,0100H
WEN1:
DECAX
JNZWEN1;短延时
LOOPWEN1
DECBL
JNZSECOND;南北路口黄灯再亮
;**********************************南北路口红灯亮,东西路口绿灯亮
THIRD:
MOVDX,0EC0AH;写入C口
MOVAL,10000001B
OUTDX,AL;南北红,东西绿
MOVCX,0;长延时
MOVAX,2000H
DELAY2:
DECAX
JNZDELAY2
LOOPDELAY2
MOVBL,4;控制黄灯亮的次数
FORTH:
MOVDX,0EC0AH;写入C口
MOVAL,10000010B
OUTDX,AL;南北红,东西黄
MOVCX,3000H
MOVAX,0100H
LI2:
DECAX
JNZLI2;短延时
LOOPLI2
;**********************************南北路口红灯亮,东西路口黄灯闪烁
MOVDX,0EC0AH
MOVAL,10000000B
OUTDX,AL;东西路口黄灯先灭
MOVCX,3000H
MOVAX,0100H
WEN2:
DECAX
JNZWEN2
LOOPWEN2
DECBL
JNZFORTH;东西路口黄灯再亮
MOVDL,0FFH
;**********************************检测是否有键按下,调用6号功能
MOVAH,06H
INT21H;执行键盘输入操作
JZFIRST
MOVAH,4CH
INT21H;返回操作系统
CODEENDS
ENDSTART
第四章
4.1实验遇到的问题和解决方法
问题:
绿灯灭后黄灯没有出现闪烁的效果,一直保持常亮
解决方法:
修改程序,通过利用异或和循环指令使绿灯灭、红灯亮后,黄灯口的状态从0到1循环变换,并通过调用延迟子程序,从而实现人眼可辨的黄灯闪的效果。
第五章
5.1实验结论与分析
通过此次实验,我们对从课本上学习的理论知识有了更加深刻的认识,也在应用知识的过程中感受到了一种成就感。
本次实验插线部分十分简单,难点在于编程的逻辑性。
红绿灯是我们日常生活中必不可少的一部分,保障着我们的安全,此次实验,在基于实际情况的基础上,设置了红绿灯合理的亮的时间。
实现一个功能第一部就是要有清楚的逻辑,此次试验我们从流程图开始,运用多个循环与嵌套,调整合适的参数
软件是实验中重要的一部分,另一部分就是硬件和环境。
可以看到实验室中有很多试验箱有问题,我们在做实验的时候也是换了多个试验箱,这个过程中也很需要我们的耐心,才能处理实验中遇到的各种问题,都是一种磨砺。
最后我们在坏的板子上贴上了便利贴,也为后来做实验的同学提供了一些便利。
纸上得来终觉浅,实验中对知识的时间运用让我们都有很大的收获。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)