微机课设报告交通灯控制系统设计2.docx

上传人:b****2 文档编号:2158666 上传时间:2022-10-27 格式:DOCX 页数:13 大小:179.10KB
下载 相关 举报
微机课设报告交通灯控制系统设计2.docx_第1页
第1页 / 共13页
微机课设报告交通灯控制系统设计2.docx_第2页
第2页 / 共13页
微机课设报告交通灯控制系统设计2.docx_第3页
第3页 / 共13页
微机课设报告交通灯控制系统设计2.docx_第4页
第4页 / 共13页
微机课设报告交通灯控制系统设计2.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

微机课设报告交通灯控制系统设计2.docx

《微机课设报告交通灯控制系统设计2.docx》由会员分享,可在线阅读,更多相关《微机课设报告交通灯控制系统设计2.docx(13页珍藏版)》请在冰豆网上搜索。

微机课设报告交通灯控制系统设计2.docx

微机课设报告交通灯控制系统设计2

《微机原理及应用》课程设计

 

课题:

 

班级

学生姓名学号

指导教师段卫平朱霞郑蓉健

淮阴工学院

电子与电气工程学院

 

1引言

2设计内容

通过16个发光二极管及数码管,模拟十字路口的红绿灯,具体时间的分配和控制如下:

(1)东西方向绿灯亮,南北方向红灯亮,并且数码管10s倒计时显示

(2)东西方向黄灯亮,南北方向红灯亮,并且数码管5s倒计时显示

(3)东西方向红灯亮,南北方向绿灯亮,并且数码管10s倒计时显示

(4)东西方向红灯亮,南北方向黄灯亮,并且数码管5s倒计时显示

具体如下图所示:

要求:

用8255的A口、B口控制16位LED灯,选择方式0,输出I/O接口电路控制数码管,使用软件延迟或硬件延迟,其中使用硬件延迟芯片8254计时更为精确。

3设计原理及说明

8255的性质及简介:

并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。

CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位、32位等。

8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:

方式0--基本输入/出方式、方式1--选通输入/出方式、方式2--双向选通工作方式。

8255的内部结构及引脚如图1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图1-2所示。

 

实验说明:

由于实验室的仪器上只有16个发光二极管,所以还得弄清楚是每个发光二极管所代表的灯的颜色及方向。

16个发光二级管,且从高到低依次为:

D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0。

在设计的过程中做了如下的规定:

R表示红灯,G表示绿灯,Y表示黄灯,E表示方向东,W表示方向西,S表示方向南,N表示方向北,D15D14表示ER,D13D12表示SR,D11D10表示EG,D9D8表示SG,D7D6表示WR,D5D4表示NR,D3D2表示WG,D1D0表示NG,D15D14D11D10表示EY,D7D6D3D2表示WY,D13D12D9D8表示SY,D5D4D1D0表示NY。

最后要在实验室通过软件进行调试,调试通过后即可看到设计的结果。

4设计过程

(1)根据要求分析可知:

东西方向绿灯亮的同时南北方向红灯亮

东西方向黄灯亮的同时南北方向红灯亮

东西方向红灯亮的同时南北方向绿灯亮

东西方向红灯亮的同时南北方向黄灯亮

(2)完成单元电路的设计及参数计算

(3)电路元器件的选择

(4)软件流程图的设计

(5)软件的设计(程序)

1 芯片初始化,写8255的方式字

2 延时,延时是通过设置指令的循环次数实现的

3 东西方向绿灯亮,南北方向红灯亮,且数码管10s倒计时显示

4 东西方向黄灯亮,南北方向红灯亮,且数码管5s倒计时显示

5 东西方向红灯亮,南北方向绿灯亮,且数码管10s倒计时显示

6 东西方向红灯亮,南北方向黄灯亮,且数码管5s倒计时显示

7 判断是否有键按下

8 返回到DOS

(6)电路接线图的设计:

设计电路图见下图

(7)进行软、硬件调试

连接实验线路,将已写好的完整程序在汇编环境下进行编译,若无错误即可在TD-PIT++实验系统上进行调试。

5设计结果与分析

灯亮的顺序满足设计内容的要求,不足之处在于使用软件延时,不是很精确,即计时时间只是大体上满足课设的要求。

六、体会与建议

实验所得结论基本课设的要求,但是存在一些不足之处。

如果用硬件延时,则可以改变这一情况。

但是要考虑到用8254如何计时1s的问题,有同学在设计中利用8254的工作方式3产生方波信号,当PC0检测到高电平,且下一时刻再次检测到低电平时,即两次检测PC0口分别为高、低电平时,便得到1秒的计时。

而我在做这次实验时没有考虑到这一问题。

但是在这次实验中,我也学到了一些东西,譬如刚开始的时候,我们组设计的电路是很复杂的,后来经过与别的组的同学一起讨论以后,我们的线路得以精简,要在正确的基础上精简线路与程序是很重要的。

另外,通过这次实验,我对8255芯片有了进一步的认识,同时对程序的设计也有了进一步的了解七、程序源代码

;****************根据查看端口资源修改下列符号值*******************

IOY0EQU0D400H;片选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

CODESEGMENT

ASSUMECS:

CODE

START:

MOVDX,MY8255_MODE;定义8255工作方式

MOVAL,10000000B;工作方式0,A口和B口为输出10000000B

OUTDX,AL

MOVDX,MY8255_A;写A口发出的起始数据

MOVAL,00111100B

OUTDX,AL

MOVDX,MY8255_B;写B口发出的起始数据

MOVAL,00111100B

OUTDX,AL

MOVDX,MY8255_C;写C口发出的起始数据9

MOVAL,11110110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据8

MOVAL,11111110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据7

MOVAL,11100000B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据6

MOVAL,10111110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据5

MOVAL,10110110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据4

MOVAL,01100110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据3

MOVAL,11110010B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据2

MOVAL,11011010B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据1

MOVAL,01100000B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据0

MOVAL,11111100B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_A;写A口发出的起始数据

MOVAL,11111100B

OUTDX,AL

MOVDX,MY8255_B;写B口发出的起始数据

MOVAL,11111100B

OUTDX,AL

MOVDX,MY8255_C;写C口发出的起始数据4

MOVAL,01100110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据3

MOVAL,11110010B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据2

MOVAL,11011010B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据1

MOVAL,01100000B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据0

MOVAL,11111100B

OUTDX,AL

CALLDALLY

;再次

MOVDX,MY8255_MODE;定义8255工作方式

MOVAL,10000000B;工作方式0,A口和B口为输出10001001B

OUTDX,AL

MOVDX,MY8255_A;写A口发出的起始数据

MOVAL,11000011B

OUTDX,AL

 

MOVDX,MY8255_B;写B口发出的起始数据

MOVAL,11000011B

OUTDX,AL

MOVDX,MY8255_C;写C口发出的起始数据9

MOVAL,11110110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据8

MOVAL,11111110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据7

MOVAL,11100000B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据6

MOVAL,10111110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据5

MOVAL,10110110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据4

MOVAL,01100110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据3

MOVAL,11110010B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据2

MOVAL,11011010B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据1

MOVAL,01100000B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据0

MOVAL,11111100B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_A;写A口发出的起始数据

MOVAL,11110011B

OUTDX,AL

MOVDX,MY8255_B;写B口发出的起始数据

MOVAL,11110011B

OUTDX,AL

MOVDX,MY8255_C;写C口发出的起始数据4

MOVAL,01100110B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据3

MOVAL,11110010B

OUTDX,AL

CALLDALLY

MOVDX,MY8255_C;写C口发出的起始数据2

MOVAL,11011010B

OUTDX,AL

CALLDALL

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1