微机原理红绿灯课程设计报告_微机原理课程设计报告

2020-02-28 其他范文 下载本文

微机原理红绿灯课程设计报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“微机原理课程设计报告”。

微机原理红绿灯课程设计报告

实验报告 2009-09-02 18:16:02 阅读1337 评论2 字号:

大中小

摘要:

介绍了基于8255A的交通灯系统设计方案,重点论述了软件系统的编写方法。实际结果表明该系统方案切实可行。

近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结

构软硬件结合,加以完善。

十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用8255A芯片实现了A、B口设置红、绿灯点亮时间的功能;红绿灯循环点亮,红绿灯变换之间,黄灯闪烁5秒

关键字: 交通灯、软件系统

设计内容 本次课程设计是交通灯实时控制器,主要是用发光二极管模拟十字路口的红绿灯,如下图所示。交通灯控制器的设计与实现主要是通过编写汇编语言程序利用8255的A口和B口对灯的亮与灭进行控制。由于实验室的仪器上只有16个发光二极管,所以还得弄清楚是每个发光二极管所代表的灯的颜色及方向。16个发光二级管,且从高到低依次为:D15D14D13D12D11D10D9D8 D7D6D5D4D3D2D1D0。在设计的过程中做了如下的规定: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。交通灯控制示意图 具体时间的分配和控制如下:

东西方向绿灯亮,南北方向红灯亮,时间20秒 东西方向黄灯闪烁,南北方向红灯亮,时间5秒 东西方向红灯亮,南北方向绿灯亮,时间20秒 东西方向红灯亮,南北方向黄灯闪烁,时间5秒

设计器材设备 微机、TD-PIT++实验箱

实验电路图 设计流程图

总体设计过程

1.根据选择题目的要求,结合所参考的资料,选择8255单元芯片以及LED显示单元电路。

1)

电路元器件的选择 可编程并行通信接口芯片8255 2)

完成8255单元电路的设计及参数计算

8255的A口地址是:IOY0+00H*4

B口地址是:IOY0+01H*4 C口地址是:IOY0+02H*4 控制端口地址是:IOY0+03H*4

2.软件流程图的设计 3.电路接线图的设计 4.软件的设计(程序见附录)1)

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

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

东西方向绿灯亮,南北方向红灯亮,时间20秒 4)

东西方向黄灯闪烁,南北方向红灯亮,时间5秒 5)

东西方向红灯亮,南北方向绿灯亮,时间20秒 6)

东西方向红灯亮,南北方向黄灯闪烁,时间5秒

7)判断是否有键按下 8)

返回到DOS 5.进行软硬件调试

因采用了pc机和微机原理实验箱,硬件电路设计相对比较简单,利用微机实验箱上的8255并行口、发光二级管,便构成了交通灯控制系统。

心得体会

通过这次课程设计,加强了我的动手、思考和分析解决问题的能力。在整个设计过程中,我们按照老师给出的总体方案设计了一套电路原理和电路连接图。通过查阅各方面资料我们编写了程序代码,并通过了调试,最终证实了该系统

方案确实可行。在设计过程中,了解了很多元器件的功能,并且对于其在电路中的使用有了更多的认识。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做,难免会遇到过各种各样的问题,同时也在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢

固。

这次课程设计使我懂得了理论与实际相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,才能够真正掌握理论知识,从而提高自己的实际动手能力和独立思考的能力。

附录(程序代码)

IOY0 EQU 0E000H PORTA EQU IOY0+00H*4 PORTB EQU IOY0+01H*4 PORTK EQU IOY0+03H*4 STACK1 SEGMENT STACK DW 256 DUP(?)

STACK1 ENDS

CODE SEGMENT

ASSUME CS:CODE START: MOV AL, 80H MOV DX, PORTK ;8255工作在方式0,A、B口均输出

OUT DX, AL MOV AL, 3CH MOV DX, PORTA ;A口东方向绿灯亮,南方向红灯亮

OUT DX, AL MOV AL, 3CH MOV DX, PORTB ;B口西方向绿灯亮,北方向红灯亮

OUT DX, AL CALL DELAY ;调用20s延时子程序

MOV CX, 5 START1: MOV AL, 0FCH MOV DX, PORTA ;A口东方向黄灯亮,南方向红灯亮

OUT DX, AL MOV AL, 0FCH MOV DX, PORTB ;B口西方向黄灯亮,北方向红灯亮

OUT DX, AL CALL DELAY1 ;调用0.5s延时子程序

MOV AL, 30H MOV DX, PORTA ;A口东方向黄灯灭,南方向红灯亮

OUT DX, AL MOV AL, 30H MOV DX, PORTB ;B口西方向黄灯灭,北方向红灯亮

OUT DX, AL CALL DELAY1 ;调用延时0.5s子程序

LOOP START1 ;CX≠0则循环

MOV AL, 0C3H MOV DX, PORTA ;A口东方向红灯亮,南方向绿灯亮

OUT DX, AL MOV AL, 0C3H MOV DX, PORTB ;B口西方向红灯亮,北方向绿灯亮

OUT DX, AL CALL DELAY ;调用20s延时子程序

MOV CX, 5 START2: MOV AL, 0F3H MOV DX, PORTA ;A口东方向红灯亮,南方向黄灯亮

OUT DX, AL MOV AL, 0F3H MOV DX, PORTB ;B口西方向红灯亮,北方向黄灯亮

OUT DX, AL CALL DELAY1 ;调用0.5s延时子程序

MOV AL, 0C0H MOV DX, PORTA ;A口东方向红灯亮,南方向黄灯灭

OUT DX, AL MOV AL, 0C0H MOV DX, PORTB ;B口西方向红灯亮,北方向黄灯灭

OUT DX, AL CALL DELAY1 ;调用0.5s延时子程序

LOOP START2 MOV AH, 1 INT 16H JZ START ;判断是否有键按下,无

按键则

QUIT: MOV AX, 4C00H 调回继续循环,有

则退出

INT 21H DELAY PROC NEAR ;20s延时子程序

PUSH CX PUSH DX PUSH BX

MOV BX, 3 MOV DX, 27880 LAB: MOV CX, 0FFFFH

LOOP $ DEC DX JNZ LAB DEC BX JNZ LAB POP BX

POP DX POP CX RET DELAY ENDP PROC NEAR ;0.5s延时子程序 PUSH CX PUSH DX MOV DX, 6970 LAB1: MOV CX, 0FFFFH DELAY1

LOOP $ DEC DX

JNZ LAB1 POP DX POP CX RET DELAY1 ENDP CODE ENDS END START

《微机原理红绿灯课程设计报告.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
微机原理红绿灯课程设计报告
点击下载文档
相关专题 微机原理课程设计报告 报告 红绿灯 微机 微机原理课程设计报告 报告 红绿灯 微机
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文