当前位置:文档之家› 华北电力大学微机课程设计

华北电力大学微机课程设计

.课程设计(综合实验)报告( 20 14 -- 20 15 年度第1学期)名称:微机原理课程设计题目:课题2 交通灯控制系统院系:控制与计算机工程学院班级:自动化1203学号:1121190308学生:帅__指导教师:吴华设计周数:1周成绩:日期:年月日一、课程设计(综合实验)的目的与要求1.1目的:在微机原理及应用课程中分别了微计算机各个基本组成模块的原理和编程技术的基础之上,综合应用各部分知识,在实验室现有设备情况下,设计一个具有一定功能的应用系统,达到对各部分知识加深理解,融会贯通的目的。

1.2要求:用8255实现交通信号灯软件,硬件设计。

8255控制LED发光管实现的十字路口信号灯电路及管理程序,并尽量接近真实信号灯的工作情况。

二、设计(实验)正文1. 设计题目:一个十字路口的交通信号灯,东西向为一组,南北向为一组,组信号灯亮灭情况相同,R6、Y5、G4 作为南北路口的交通灯,R2、Y1、G0作为东西路口的交通等.程使六个灯按交通等变化规律亮灭。

要求进行周期性重复控制:g) 南北路口的绿灯、东西路口的红灯同时亮20 秒。

h) 南北路口的黄灯闪烁3 秒,同时东西路口的红灯闪3 秒。

i) 南北路口的红灯、东西路口的绿灯同时亮90 秒。

j) 南北路口的红灯、同时东西路口的黄灯亮闪烁3 秒。

k) 在LED 上同步显示倒计时。

2 设计过程:2.1 芯片类型及使用:( 1 )交通信号灯的灯光变化和数码显示通过8255实现控制。

PA口用于输出信号控制灯光的变化,PB口用于输出信号控制数码管的显示,PC0用于输入k0的控制开关信号,PC1用于输入用于硬件延时的方波信号。

PC7用于输出控制数码管工作/不工作的信号。

故写入方式控制字为10000001B=81H( 2 )LED数码显示:数码管采用共阴极接法,位选信号为0则数码管工作。

a~dp段发亮条件:对应位输入1,见下表所示:用两片8255控制四个数码管,U12的PA 、PB 端控制计数器的高位(也就是十位)。

U13的PA 、PB 控制计数器的低位(也就是个位)。

( 3 )用两片74LS273控制南北东西12个路灯。

D1--D12分别对应芯片的U9、U11的Q6、Q3、Q0、Q9、Q7、Q4、Q1、Q10、Q8、Q5、Q2、Q11。

(4 )8086的20根地址线分别接到3个74LS273的U6、U7、U10的D 口。

( 5 )用一片74LS154控制两片8255。

U6、U7、U10的Q 端经过逻辑运算接入U5的ABCD 端用来控制两片8255的显示顺序。

2.2 线路连接及写入程序中的数据的计算(1)南北向红灯,东西向黄灯,低电平0无效,高电平1有效.(2)南北向绿灯,东西向红灯,led15显然没有,那数据的最高四位一定是1111。

(3)南北向黄灯,东西向红灯4。

3. 功能流程图及电路连接图 (1)功能及程序流程图( 2 )硬件电路仿真。

4 程序.MODEL SMALL.8086.STACK.CODE.STARTUPSTART:MOV DX,0406HMOV AL,80HOUT DX,ALMOV DX,0606HMOV AL,80HOUT DX,ALMOV AX,ALL_LIGHT ;数据的地址0MOV DX,0200HMOV DX,AX8253延迟90秒R6,Y1闪3秒AGAIN: MOV SI,OFFSET SITUATION;取得定义数据段的偏移地址EA MOV DX,0200H ;273地址NEXT: MOV AX,[SI]OUT DX,AX ;数据输出到交通LED灯上PUSH SILEA SI,LEDLEA DI,TABLEONE;DUAN0:MOV AX,93 ;赋初值93MOV CX,AXPUSH CXAB: CALL DISPLAYPOP CXDEC CXPUSH CXMOV AX,CXCMP AX,3JGE ABPOP CXPOP SIADD SI,2 ;下一状态1MOV DX,0200HMOV AX,[SI]OUT DX,AXPUSH SILEA SI,LEDLEA DI,TABLETWO;DUAN1:MOV AX,3MOV CX,AXPUSH CXAC: CALL DISPLAYPOP CXDEC CXPUSH CXMOV AX,CXJGE ACPOP CXPOP SIADD SI,2 ;下一状态2MOV DX,0200HMOV AX,[SI]OUT DX,AXPUSH SILEA SI,LEDLEA DI,TABLETHREE;DUAN2:MOV AX,23MOV CX,AXPUSH CXAD: CALL DISPLAYPOP CXDEC CXPUSH CXMOV AX,CXCMP AX,3JGE ADPOP CXPOP SIADD SI,2 ;下一状态3MOV DX,0200HMOV AX,[SI]OUT DX,AXPUSH SILEA SI,LEDLEA DI,TABLEFOUR;DUAN3:MOV AX,3MOV CX,AXPUSH CXAE: CALL DISPLAYPOP CXDEC CXPUSH CXCMP AX,0JGE AEPOP CXPOP SIJMP AGAIN;数码管分解显示子程序DISPLAYDISPLAY PROC NEARMOV DX,10DIV DL ;32/10=3,把十位给分解出来显示0,此时AL=3,AH=2MOV CL,ALMOV CH,AHXOR BX,BXMOV BL,CLMOV AL,[SI+BX]MOV DX,0400HOUT DX,ALXOR BX,BXMOV BL,CHMOV AL,[SI+BX]MOV DX,0600HOUT DX,ALCALL XUNMOV DX,10DIV DLMOV CL,ALMOV CH,AHXOR BX,BXMOV BL,CLMOV AX,[SI+BX]MOV DX,0402HOUT DX,ALXOR BX,BXMOV BL,CHMOV AL,[SI+BX]MOV DX,0602HOUT DX,ALCALL DELAYRETDISPLAY ENDPXUN PROC NEARMOV AH,0MOV AL,[DI]INC DIRETXUN ENDPDELAY PROC NEAR ;;延时子程序2,延时时间为500*(执行469次循环语句的时间)MOV BX,500LP1: MOV CX,469LP2: LOOP LP2DEC BXJNZ LP1RETDELAY ENDP.DATATABLEONE DB90,89,88,87,86,85,84,83,82,81,80,79,78,77,76,75,74,73,72,71,70,69,68,67,66,65,64,6 3,62,61,60,59,58,57,56,55,54,53,52,51,50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,3 4,33,32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4 TABLETWO DB 3,2,1,0TABLETHREE DB 20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0TABLEFOUR DB 3,2,1,0LED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;数码管待显示的字符数组0SITUATION DW 00001B ;南北向红灯,东西向绿灯,MSB——》led15,LSB——》led0 S1 DW 10001B ;南北向红灯,东西向黄灯,低电平0无效,高电平1有效S2 DW 01100B ;南北向绿灯,东西向红灯,led15显然没有,那数据的最高四位一定是1111S3 DW 01010B ;南北向黄灯,东西向红灯4SIT_END = $ALL_LIGHT EQU 10110BEND课程设计(综合实验)总结或结论一周的课程设计结束了,在这次的课程设计中不仅检验了我们所学习的知识,也培养了我们如何去把握一件事情,如何去做一件事情,又如何完成一件事情。

在设计过程中,同学分工设计,同学们相互探讨,相互学习,相互监督。

学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。

通过这次课程设计,综合运用本专业所学课程的理论和实际知识进行一次交通灯设计工作的实际训练从而培养和提高学生独立工作能力,相关的课程都有了全面的复习,独立思考的能力也有了提高。

在这次设计过程中,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。

由于我们的设计能力有限,在设计过程中难免出现错误,恳请老师们多多指教,我十分乐意接受你们的批评与指正,我们将万分感。

四、参考文献[1] 学坚,周斌. 微型计算机原理及应用[M] . :清华大学,2001.[2] 朱定华等. 微型计算机原理及应用[M]. :电子工业,2005.附录(设计流程图、程序、表格、数据等)。

相关主题