四 8255A并行口实验-----交通灯控制

合集下载

基于8255A的应用—交通灯的设计

基于8255A的应用—交通灯的设计

《微型计算机技术》课程设计报告题目:基于8255A的应用—交通灯的设计专业名称:通信工程班级:学号:姓名:2013年 1月基于8255A的应用—交通灯的设计胡晋电子信息工程学系摘要:随着微型计算机技术的飞速发展。

为此,基于8255芯片原理来实现交通灯的的控制是这次设计基础。

因为交通灯的控制可以分东西方向和南北方向两种,每种可用红、绿、黄三个灯进行交通管理,所以用8255芯片的PB口对六个交通灯进行控制。

通过8255芯片的PA口来控制交通灯状态的切换。

关键词:交通灯;8255芯片;控制;开关1 设计要求、目的和内容1.1设计要求基于微型计算机技术,利用8255芯片的原理实现交通的的控制,即8255芯片的应用—交通灯的的设计。

1.2 设计目的掌握8255芯片方式0的编程方法,PC机及配套的接口电路实验装置的连接于调试,IC芯片:8255A芯片的原理应用1.3 设计内容采用8255芯片设计交通灯控制的接口方案,硬件电路的设计和连接,程序的编写和调试。

2 设计原理2.1 8255内部框图介绍图1 8255A的内部结构图数据总线缓冲器:这是一个双向三态的8位数据缓冲器,它是8255A与微机系统数据总线的接口。

输入输出的数据、CPU输出的控制字以及CPU输入的状态信息都是通过这个缓冲器传送的。

三个端口A,B和C:A端口包含一个8位数据输出锁存器和缓冲器,一个8位数据输入锁存器。

B端口包含一个8位数据输入/输出锁存器和缓冲器,一个8位数据输入缓冲器。

C端口包含一个8位数据输出锁存器和缓冲器,一个8位数据输入缓冲器(输入没有锁存器)。

A组和B组控制电路:这是两组根据CPU输出的控制字控制8255工作方式的电路,它们对于CPU而言,共用一个端口地址相同的控制字寄存器,接收CPU输出的一字节方式控制字或对C 口按位复位字命令。

方式控制字的高5位决定A组的工作方式,低3位决定B组的工作方式。

[2]对C口按位复位命令字可对C口的每一位实现置位或复位。

交通灯设计-8255,8254(附连线图和源代码)

交通灯设计-8255,8254(附连线图和源代码)

西安郵電學院硬件课程设计报告题目:微机原理与接口课程设计院系名称:计算机学院专业名称:软件工程班级:软件0802学生姓名:***学号(8位):********指导教师:**设计起止时间:2011年05月23日~2011年05月27日一、设计目的通过可编程并行接口芯片8255A和可编程定时器/计数器芯片8253/8254以及中断控制器 8259实现十字路口交通灯的模拟控制,进一步掌握并行接口和定时器/计数器及数码管控制的实际应用。

二、设计内容1.用试验台提供的发光二极管(红绿黄各两支,共六支)作为南北路口(红绿黄各一支)和东西路口(红绿黄各一支)的模拟交通灯。

2.用可编程并行接口芯片8255A控制模拟交通灯的亮与灭和数码管的倒计时显示。

3.用可编程定时器/计数器芯片8253实现模拟交通灯亮与灭的时间延迟控制。

4.用数码管作为模拟交通灯亮与灭的时间延迟控制的倒计时显示。

5.用汇编语言编程使六个灯按交通灯变化规律“亮/灭”。

交通灯变化规律要求:① 南北路口的绿灯,东西路口的红灯同时亮30秒,且数码管30秒倒计时显示。

② 南北路口的黄灯闪烁3秒(三亮三灭),同时东西路口的红灯继续亮,且数码管3秒倒计时显示。

③ 南北路口的红灯,东西路口的绿灯同时亮20秒,且数码管20秒倒计时显示。

④ 南北路口的红灯继续亮,同时东西路口的黄灯闪烁3秒(三亮三灭),且数码管3秒倒计时显示。

⑤ 转①重复⑥按压“东西紧急键”,则东西方向绿灯,南北方向红灯;再次按压“东西紧急键”,解除东西紧急通行状态。

(“东西紧急键”可是键盘键,亦可是逻辑开关键)⑦按压“南北紧急键”,则南北方向绿灯,东西方向红灯;再次按压“南北紧急键”,解除南北紧急通行状态。

(“南北紧急键”可是键盘键,亦可是逻辑开关键)⑧按<ESC>键退出程序。

备注:1、按键用8255A 芯片的PC 口实现或用键盘模拟实现。

2、8253定时到可以通过8259,用中断的方式实现定时器。

8255交通灯控制实验

8255交通灯控制实验

交通灯控制实验计算机实验班1001 赵训201026811130交通灯控制实验:设计一个十字路口的交通灯控制,设初始状态是4个路口红灯全亮,然后,南北方向绿灯亮,延时30秒,南北方向灯灭,黄灯闪3次后,红灯亮,东西方绿灯亮,延时30秒,东西方黄灯闪3次后红灯亮。

重复上述过程。

要求:作出实验流程图。

硬件连接图。

写出汇编语言程序。

1、实验目的:分析实际的十字路口交通灯的亮灭过程,用实验箱上的8255实现交通灯的控制(红,黄,绿三色灯)。

2、实验设备及材料:微机原理和接口技术实验室的实验箱和电脑设备等。

3、理论依据:此设计是通过并行接口芯片8255A和8086计算机的硬件连接,以及通过8253延时的方法,来实现十字路口交通灯的模拟控制。

8255A是可编程的通用并行输入/输出接口芯片,因通用性强,使用灵活,可直接与CPU总线相连,应用非常广泛。

8255A芯片内部有3个8为的输入/输出端口,即A口,B口和C口。

从内部控制的角度来讲,可分为两组:A组合B组。

A 组控制模块管理A口和C口德高四位(PC7~PC4),B组控制模块管理B口和C口的低四位(PC3~PC0)。

如硬件连接图所示(在后),红灯(RLED),黄灯(YLEDD)和绿灯(GLED)分别接在8255的A,B,C口的低四位端口,PA0,PA1,PA2,PA3分别接1,2,3,4(南东北西)路口的红灯,B,C口类推。

8086工作在最小模式,低八位端口AD0~AD7接到8255和8253的D0~D7,AD8~AD15通过地址锁存器8282,接到三八译码器,译码后分别连到8255和8253的CS片选端。

8253的三个门控端接+5V,CLOCK0接由分频器产生的1MHZ的时钟脉冲,OUT0接到CLOCK1和CLOCK2,OUT1接到8086的AD18,8086通过检测此端口是否有高电平来判断是否30s定时到。

OUT2产生1MHZ方波通过或门和8255的B口共同控制黄灯的闪烁。

8255交通灯模拟实验

8255交通灯模拟实验

实验一(2) 8255交通灯模拟实验1、实验要求: 编写程序,以8255的PA 口作为输出口,控制4个双色LED 灯(可发红、绿、黄光),模拟十字路口交通灯管理。

2、实验目的:(1)学习I /0口扩展方法;掌握8255的工作原理以及编程方法,了解软件与硬件的调试技术。

(2)学习模拟交通灯控制方法;(3)学习双色LED 灯的使用;3.8255的工作原理:8255有三个8位的并行口,端口既可以编程为普通I/O 口,也可以编程为选通I/O 口和双向传输口。

8255为总线兼容型,可以与CPU 的总线直接接口。

其中,口地址取决于片选CS 和A1、A0。

选择如下:8255方式字选择:工作方式字特征位本实验中8255编程为PB口、PC口、PA口均输出,根据8255状态控制字选择方法。

8255控制字应为80H。

4.实验器材:(1)G2010+实验平台 1台(2)G6W仿真器1台(3)连线若干根(4)8255芯片1片(5)G2002—8086板 l块5.接线方案:6、实验说明:(1) 把G2002—8086板上的8255的片选CS5孔连“译码器”的YC2(0A000H)孔。

因8255片选信号为0A000H,所以,A口为0A000H、口为0A001H、C口为0A002H、命令口为0A003H。

(2) 因为本实验是模拟交通灯控制实验,所以要先了解实际交通灯的变化规律。

假设一个十字路口为东西南北走向。

初始状态0为东西红灯,南北红灯。

然后转状态1南北绿灯通车,东西红灯。

过一段时间转状态2,南北绿灯闪几次转亮黄灯,东西仍然红灯,延时儿秒。

再转状态3,东西绿灯通车,南北红灯。

过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。

最后循环至状态1。

(3)双色LED是由一个红灯LED管芯和一个绿色LED管芯封装在一起,公用负端。

当红色端加高电平,绿色正端加低电平,红灯亮;当红色端加低电平,绿色正端加高电干,绿灯亮;两端都加高电平时,黄灯亮。

交通灯控制实验(TPC-USB 微机接口实验系统集成开发环境)

交通灯控制实验(TPC-USB 微机接口实验系统集成开发环境)

实验八 交通灯控制实验一、实验目的:1、学习并掌握并行接口8255A的内部结构,功能及编程。

2、通过并行接口8255A实现十字路口交通灯的模拟控制,进一步掌握对并行A、B、C端口能在以下三种方式下工作:方式0—基本输入/出方式方式1—选通输入/出方式方式2—双向选通输入/出方式8255A的工作方式控制字用来决定8255A端口的工作方式,方式控制字的格式如图2-2所示。

表2-1 8255端口地址L12、L11、L10作为东西路口的交通灯与PC0、PC1、PC2相连,编程使六个交通灯按如下变化规律燃灭。

十字路口交通灯的变化规律要求:(1)南北路口的绿灯、东西路口的红灯同时亮。

(2)南北路口的黄灯闪烁若干次,同时东西路口红灯继续亮。

(3)南北路口的红灯、东西路口的绿灯同时亮。

(4)南北路口的红灯继续亮,同时东西路口的黄灯亮闪烁若干次。

(5)转(1)重复。

四、实验步骤1、按图2-1连接实验线路,注意切断实验箱电源。

2、参考下面的实验流程编写实验程序。

实验流程如下:3、经汇编、链接后将程序装入系统。

4、运行程序,观察交通灯的变化。

交通灯控制实验程序1: data segmentprotc1 db 9bh,0bbh,0fbh,0bbh,0fbh,0bbh,0fbh db 7eh,7dh,7fh,7dh,7fh,7dh,7fhdb 0ffhdata endscode segmentassume cs:code,ds:datastart: mov ax,datamov ds,axmov dx,0e3hmov al,90hout dx,almov dx,0e2hloop1: mov bx,0000hloop2:mov al,protc1[bx]cmp al,0ffhjz loop1out dx,alcall delayinc bxjmp loop2delay:mov cx,01ffhde1: mov di,0ffhde0: dec dijnz de0loop de1retcode endsend start交通灯控制实验程序2:data segmentprotc1 db 0dbh,0bbh,0fbh,0bbh,0fbh,0bbh,0fbhdb 7eh,7dh,7fh,7dh,7fh,7dh,7fhdb 0ffhdata endscode segmentassume cs:code,ds:datastart: mov ax,datamov ds,axmov dx,0e3hmov al,90hout dx,almov dx,0e2hloop1: mov bx,0000hloop2:mov al,protc1[bx]cmp al,0ffhjz loop1out dx,aland al 21hcmp al,21hjz aamov cx,0effhjmp bbaa: mov cx,01dfhbb: call delayinc bxjmp loop2delay:de1: mov di,0ffhde0: dec dijnz de0loop de1retcode endsend startdata segmentportc1 db 24h,44h,04h,44h,04h,44h,04h ;六个灯可能db 81h,82h,80h,82h,80h,82h,80h ;的状态数据 db 0ffh ;结束标志 data endscode segmentassume cs:code,ds:datastart:mov ax,datamov ds,axmov dx,io8255bmov al,90hout dx,al ;设置8255为C口输出mov dx,io8255are_on: mov bx,0on: mov al,portc1[bx]cmp al,0ffhjz re_onout dx,al ;点亮相应的灯inc bxmov cx,20 ;参数赋初值test al,21h ;是否有绿灯亮jz de1 ;没有,短延时mov cx,5000 ;有,长延时de1: mov di,9000 ;di赋初值5000de0: dec di ;减1计数jnz de0 ;di不为0loop de1push dxmov ah,06hmov dl,0ffhint 21hpop dxjz on ;没有,转到onexit: mov ah,4ch ;返回int 21hcode endsend start。

微机课程设计设计_应用8255A实现交通灯控制

微机课程设计设计_应用8255A实现交通灯控制

随着计算机科学技术的不断发展,微型计算机得到了广泛的应用,是人们利用计算机设计和开发各种应用系统的基础。

同时微型计算机接口技术也是一门实践性较强的课程,理论与实践相结合可以更好的掌握知识,这也是这次交通灯系统控制的设计目的。

交通灯是交通安全的关键,已广泛应用于城乡的十字路口,它的有无作为交通安全检查的重要依据,是交通秩序正常进行的有力保障。

十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。

十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。

当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。

它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。

交通灯的时间控制显示,以固定时间值预先“固化”在单片机中,每次只是以一定周期交替变化。

但是,实际上不同时刻的车辆流通状况是十分复杂的,是高度非线性的、随机的,还经常受认为因素的影响。

采用定时控制经常造成道路有效应用时间的浪费,出现绿灯方向车辆较少,红灯方向车辆积压。

它不顾当前道路上交通车辆数的实际情况变化,其最大的缺陷就在于当路况发生变化时,不能满足司机与路人的实际需要,轻者造成时间上的浪费,重者直接导致交通堵塞,导致城市交通效率的下降。

目前,有一种使用“模糊控制”技术控制交通灯的方法。

能够根据十字路口两个方向上车辆动态状况,自动判断红绿灯时间间隔,以保证最大车流量,减少道口的交通堵塞。

但是却不像定时控制,能用数字显示器显示当前灯色剩余时间,以便于驾驶员随时掌握自己的驾驶动作,及时停车或启动。

本次的交通灯控制系统主要由8255A并行口、8253定时/计算器、8259单极中断控制器以及74LS139译码器实验等芯片组成。

整个课程设计主要使用8255A的A口和B口模拟十字路口交通灯的闪烁情况。

主要包括以下五个方面:1.课程设计题目名称;2.课程设计要求完成的任务;3.系统设计文档(包括了总体设计、详细设计以及程序设计等文档);4、课程设计总结;5.参考文献本次课程设计以固定的程序实现对交通灯实行控制,没有实现智能化,但智能化是交通控制系统是交通控制系统发展的必然趋势,也是满足日益发展的社会需要。

微机课程设计_应用8255A实现交通灯控制

微机课程设计_应用8255A实现交通灯控制

随着计算机科学技术的不断发展,微型计算机得到了广泛的应用,是人们利用计算机设计和开发各种应用系统的基础。

同时微型计算机接口技术也是一门实践性较强的课程,理论与实践相结合可以更好的掌握知识,这也是这次交通灯系统控制的设计目的。

交通灯是交通安全的关键,已广泛应用于城乡的十字路口,它的有无作为交通安全检查的重要依据,是交通秩序正常进行的有力保障。

十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。

十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。

当前,国大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。

它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。

交通灯的时间控制显示,以固定时间值预先“固化”在单片机中,每次只是以一定周期交替变化。

但是,实际上不同时刻的车辆流通状况是十分复杂的,是高度非线性的、随机的,还经常受认为因素的影响。

采用定时控制经常造成道路有效应用时间的浪费,出现绿灯方向车辆较少,红灯方向车辆积压。

它不顾当前道路上交通车辆数的实际情况变化,其最大的缺陷就在于当路况发生变化时,不能满足司机与路人的实际需要,轻者造成时间上的浪费,重者直接导致交通堵塞,导致城市交通效率的下降。

目前,有一种使用“模糊控制”技术控制交通灯的方法。

能够根据十字路口两个方向上车辆动态状况,自动判断红绿灯时间间隔,以保证最大车流量,减少道口的交通堵塞。

但是却不像定时控制,能用数字显示器显示当前灯色剩余时间,以便于驾驶员随时掌握自己的驾驶动作,及时停车或启动。

本次的交通灯控制系统主要由8255A并行口、8253定时/计算器、8259单极中断控制器以及74LS139译码器实验等芯片组成。

整个课程设计主要使用8255A的A口和B口模拟十字路口交通灯的闪烁情况。

主要包括以下五个方面:1.课程设计题目名称;2.课程设计要求完成的任务;3.系统设计文档(包括了总体设计、详细设计以及程序设计等文档);4、课程设计总结;5.参考文献本次课程设计以固定的程序实现对交通灯实行控制,没有实现智能化,但智能化是交通控制系统是交通控制系统发展的必然趋势,也是满足日益发展的社会需要。

微机原理实验四实验报告8255控制交通灯实验

微机原理实验四实验报告8255控制交通灯实验

实验四8255控制交通灯实验一、实验目的与要求1、了解8255芯片的工作原理,熟悉其初始化编程方法以及输入、输出程序设计技巧。

学会使用8255并行接口芯片实现各种控制功能,如本实验(控制交通灯)等。

2、熟悉8255内部结构和与8088的接口逻辑,熟悉8255芯片的3种工作方式以及控制字格式。

3、认真预习本节实验内容,尝试自行编写程序,填写实验报告。

二、实验设备STAR系列实验仪一套、PC机一台三、实验内容1、编写程序:使用8255的PA0..2、PA4..6控制LED指示灯,实现交通灯功能。

2、连接线路验证8255的功能,熟悉它的使用方法。

四、实验原理图五、实验步骤1、连线说明:B4区:CS、A0、A1——A3区:CS1、A0、A1B4区:JP56(PA口)——G6区:JP652、观察实验结果,是否能看到模拟的交通灯控制过程。

六、演示程序.MODELTINYCOM_ADDEQU0F003HPA_ADDEQU0F000HPB_ADDEQU0F001HPC_ADDEQU0F002H.STACK100.DATALED_DataDB01111101B;东西绿灯,南北红灯DB11111101B;东西绿灯闪烁,南北红灯DB10111101B;东西黄灯亮,南北红灯DB11010111B;东西红灯,南北绿灯DB11011111B;东西红灯,南北绿灯闪烁DB11011011B;东西红灯,南北黄灯亮.CODESTART:MOVAX,@DATAMOVDS,AXNOPMOVDX,COM_ADDMOVAL,80H;PA、PB、PC为基本输出模式OUTDX,ALMOVDX,PA_ADD;灯全熄灭MOVAL,0FFHOUTDX,ALLEABX,LED_DataSTART1:MOVAL,0XLATOUTDX,AL;东西绿灯,南北红灯CALLDL5SMOVCX,6START2:MOVAL,1XLATOUTDX,AL;东西绿灯闪烁,南北红灯CALLDL500msMOVAL,0XLATOUTDX,ALCALLDL500msLOOPSTART2MOVAL,2;东西黄灯亮,南北红灯XLATOUTDX,ALCALLDL3SMOVAL,3;东西红灯,南北绿灯OUTDX,ALCALLDL5SMOVCX,6START3:MOVAL,4;东西红灯,南北绿灯闪烁XLATOUTDX,ALCALLDL500msMOVAL,3XLATOUTDX,ALCALLDL500msLOOPSTART3MOVAL,5;东西红灯,南北黄灯亮XLATOUTDX,ALCALLDL3SJMPSTART1DL500msPROCNEARPUSHCXMOVCX,60000DL500ms1:LOOPDL500ms1POPCXRETDL500msENDPDL3SPROCNEARPUSHCXMOVCX,6DL3S1:CALLDL500msLOOPDL3S1POPCXRETENDPDL5SPROCNEARPUSHCXMOVCX,10DL5S1:CALLDL500msLOOPDL5S1POPCXRETENDSTART七、实验扩展及思考1、如何对8255的PC口进行位操作?控制字最高位写0,中间三位无关取0,接着三位是编码了对应的C口哪几位,最低一位为0是复位,为1是置位。

交通灯设计-8255-8254(附连线图和源代码)

交通灯设计-8255-8254(附连线图和源代码)

西安郵電學院硬件课程设计报告题目:微机原理与接口课程设计;^院系名称:计算机学院专业名称:软件工程班级:软件0802学生姓名:王晶晶学号(8位): 04085047指导教师:刘军设计起止时间:2011年05月23日~2011年05月27日[一、设计目的通过可编程并行接口芯片8255A和可编程定时器/计数器芯片8253/8254以及中断控制器 8259实现十字路口交通灯的模拟控制,进一步掌握并行接口和定时器/计数器及数码管控制的实际应用。

二、设计内容1.用试验台提供的发光二极管(红绿黄各两支,共六支)作为南北路口(红绿黄各一支)和东西路口(红绿黄各一支)的模拟交通灯。

2.用可编程并行接口芯片8255A控制模拟交通灯的亮与灭和数码管的倒计时显示。

3.用可编程定时器/计数器芯片8253实现模拟交通灯亮与灭的时间延迟控制。

4.用数码管作为模拟交通灯亮与灭的时间延迟控制的倒计时显示。

'5.用汇编语言编程使六个灯按交通灯变化规律“亮/灭”。

交通灯变化规律要求:① 南北路口的绿灯,东西路口的红灯同时亮30秒,且数码管30秒倒计时显示。

② 南北路口的黄灯闪烁3秒(三亮三灭),同时东西路口的红灯继续亮,且数码管3秒倒计时显示。

③ 南北路口的红灯,东西路口的绿灯同时亮20秒,且数码管20秒倒计时显示。

④ 南北路口的红灯继续亮,同时东西路口的黄灯闪烁3秒(三亮三灭),且数码管3秒倒计时显示。

⑤ 转①重复⑥按压“东西紧急键”,则东西方向绿灯,南北方向红灯;再次按压“东西紧急键”,解除东西紧急通行状态。

(“东西紧急键”可是键盘键,亦可是逻辑开关键)⑦按压“南北紧急键”,则南北方向绿灯,东西方向红灯;再次按压“南北紧急键”,解除南北紧急通行状态。

(“南北紧急键”可是键盘键,亦可是逻辑开关键)"⑧按 <ESC>键退出程序。

备注:1、按键用 8255A 芯片的 PC 口实现或用键盘模拟实现。

2、8253定时到可以通过8259,用中断的方式实现定时器。

四 8255A并行口实验-----交通灯控制

四 8255A并行口实验-----交通灯控制

..’. 实验四8255A并行口实验-----交通灯控制一、8255A并行口实验(二)目的掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。

二、8255A并行口实验(二)内容1、实验原理实验原理图如图所示,PB4 ~ PB7和PC0 ~ PC7分别与发光二极管电路L1~ L12 相连,本实验为模拟交通灯实验。

交通灯的亮灭规律如下:设有一个十字路口,1、3为南北方向,2、4为东西方向,初始为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车;延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次以后,1、3 路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车;延时一段时间后,2、4 路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到1、3路口方向,之后重复上述过程。

8255A的PB4~ PB7对应黄灯,PC0 ~ PC3对应红灯,PC4~ PC7对应绿灯。

8255A工作于模式0,并置为输出。

由于各发光二极管为共阳极,使其点亮应使8255A相应端口清0。

2、实验线路连接(1) 8255CS插孔连译码输出070H-07FH插孔。

(2) L1 - PC4 L4 - PC5 L7 - PC6 L10 - PC7L2 - PB4 L5 - PB5 L8 - PB6 L11 - PB7L3 - PC0 L6 - PC1 L9 - PC2 L12 - PC33、实验步骤(1) 按图5-9连好实验线路(2) 运行实验程序在系统显示"DVCC-86H"状态下,按任意键,系统显示命令提示符"-"。

按GO键,显示"1000 XX"输入F000 :B1B0按EXEC键,在DVCC-8086H上显示"8255-2"。

同时L1~L12 发光二极管模拟交通灯显示。

三、实验程序CODE SEGMENTASSUME CS:CODEIOCONPT EQU 0073HIOAPT EQU 0070HIOBPT EQU 0071HIOCPT EQU 0072HIOBDATA EQU 0500HCONTPORT EQU 00DFH DATAPORT EQU 00DEHDATA1 EQU 0640HSTART: JMP IOLEDIOLED: CALL FORMATCALL LEDDISPMOV AX,0HMOV DS,AXMOV AL,82HMOV DX,IOCONPTOUT DX,ALMOV DX,IOBPTIN AL,DXMOV BYTE PTR DS:[0501H],ALMOV DX,IOCONPTMOV AL,80HOUT DX,ALMOV DX,IOBPTMOV AL,DS:[0501H]OR AL,0F0HOUT DX,ALMOV DX,IOCPTMOV AL,0F0HOUT DX,ALCALL DELAY1IOLED0: MOV AL,10100101BMOV DX,IOCPTOUT DX,ALCALL DELAY1CALL DELAY1OR AL,0F0HOUT DX,ALMOV CX,8HIOLED1: MOV DX,IOBPTMOV AL,DS:[0501H]AND AL,10101111BOUT DX,AL..’. CALL DELAY2OR AL,01010000B OUT DX,ALCALL DELAY2 LOOP IOLED1 MOV DX,IOCPT MOV AL,0F0H OUT DX,ALCALL DELAY2 MOV AL,01011010B OUT DX,ALCALL DELAY1 CALL DELAY1OR AL,0F0HOUT DX,ALMOV CX,8HIOLED2: MOV DX,IOBPT MOV AL,DS:[0501H]AND AL,01011111BOUT DX,ALCALL DELAY2OR AL,10100000BOUT DX,ALCALL DELAY2LOOP IOLED2MOV DX,IOCPTMOV AL,0F0HOUT DX,ALCALL DELAY2JMP IOLED0 DELAY1: PUSH AXPUSH CXMOV CX,0030H DELY2: CALL DELAY2 LOOP DELY2POP CXPOP AXRETDELAY2: PUSH CXMOV CX,8000H DELA1: LOOP DELA1POP CXRETLEDDISP:MOV AL,90HMOV DX,CONTPORTOUT DX,ALMOV BYTE PTR DS:[0600H],00 LED1: CMP BYTE PTR DS:[0600H],07HJA LED2MOV BL,DS:[0600H]MOV BH,0HMOV AL,CS:[BX+DA TA1]MOV DX,DA TAPORTOUT DX,ALADD BYTE PTR DS:[0600H],01HJNZ LED1LED2: RETFORMAT: MOV BX,0MOV WORD PTR DS:[BX+0640H],405BHADD BX,2MOV WORD PTR DS:[BX+0640H],4040HADD BX,2MOV WORD PTR DS:[BX+0640H],6D6DHADD BX,2MOV WORD PTR DS:[BX+0640H],7F5BHRETCODE ENDSEND START。

8255并行接口实验(精)

8255并行接口实验(精)

六. 编程提示
(1) 通过8255控制发光二极管PB3 PB0 PA5 PA2 对应黄灯,PB1 PA6 PA3 PA0对应红灯,PB2 PA7 PA4 PA1对应绿灯,以模拟交通灯的管理. (2) 程序中设定好8255A的工作方式,三个端口 均工作在方式0处于输出状态。 (3) 各发光二极管共阳极,使其点亮应使对应的 端口输出低电平。
实验一
8255并行接口实验
--------控制交通灯一.验目的掌握通过8255A并行口传输数据的方法, 以控制发光二极管的亮与灭.
二.实验目的

用8255作为输出口,控制十二个发光二极 管熄灭,模拟交通灯管理.
三 .程序框图
四 .实验电路
五 .实验步骤
(1)电路连线如下: 8255A PA0-L12 PA1-L11 PA2-L10 PA3-L9 PA4-L8 PA5-L7 PA6-L6 PA7-L5 PB0-L4 PB1-L3 PB2-L2 PB3-L1 (2)运行实验程序 在系统“P.”状态时,输入32F0,按EXEC键, L1~L12发光二极管模拟交通灯显示。

微机原理接口与技术实验四、控制交通灯

微机原理接口与技术实验四、控制交通灯
微机原理与接口技术实验报告
姓名
学号
实验组
实验时间
指导教师
成绩
实验名称
实验四、控制交通灯
实验目的
1.掌握通过8255A并行口传输数据的方法,以控制发光二级管的亮与灭。
实验内容
用8255A作输出口,控制十二个发光二级管然灭,模拟交通灯管理
实验环境
1.硬件:PC一台、8255A实验箱
2.软件:32位的Windows操作系统、Masm50、emu8086
OUT DX,AL
CALL DELAY1
MOV DX, 0ffd8h
MOV AL, 10101110b//1,3红灯,2、4绿灯
OUT DX,AL
INC DX
MOV AL,00001011b
OUT DX,AL
CALL DELAY1
CALL DELAY1
MOV CX,0008H
P2: MOV DX, 0ffd8h
MOV CX,0030H
DELAY2: CALL DELAY3
LOOP DELAY2
POP CX
POP AX
RET
DELAY3: PUSH CX
MOV CX,8000H
LOOP $
POP CX
RET
CODE ENDS
END START
实验总结
本次实验达到了实验目的,通过汇编语言模拟了交通灯的工作过程。对汇编语言有了更进一步的认识,基本掌握了通过8255A并行口传输数据的方法。
(3)按复位键RESET返回“P”或按暂停键STOP+MON键返回“P”
(4)代码
CODE SEGMENT
ASSUME CS:CODE
ORG 32F0H

8255A的简单红绿灯

8255A的简单红绿灯

基于8255A的简单红绿灯一、设计目的学习I/0口扩展方法;掌握8255的工作原理以及编程方法,了解软件与硬件的调试技术。

通过8255A的编程控制,实现对交通灯的定时控制,实现红绿交通灯自动控制。

二、设计要求设有一个十字路口,1、3为南,北方向,2、4为东西方向,初始状态灯全亮全灭检测。

之后1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。

延迟30秒后,1、3路口的绿灯熄灭,而1,3路口的黄灯开始闪烁(1HZ)。

闪烁5秒后,1、3路口的红灯亮,同时2、4路口的绿灯亮,2、4路口方向开始通车。

延迟30秒时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁。

闪烁5秒后,再切换到1、3路口方向。

之后,重复上述过程。

三、电路及连线设计图1 实验连线图四、使用说明⒈按图1连好实验线路8255A: PA0->L3,PA1->L6,PA2->L9,PA3->L12;PB0->L2,PB1->L5,PB2->L8,PB3->L11; PC0->L1,PC1->L4,PC2->L7,PC3->L102. 在PC机中装载相应的程序并连续运行。

五、流程图设计图2 程序流程图六、程序设计如下CODE SEGMENTASSUME CS:CODEIOCONPT EQU 0FF2BHIOAPT EQU 0FF28HIOBPT EQU 0FF29HIOCPT EQU 0FF2AHORG 11e0HSTART:MOV DX,IOCONPT ; 灯的初始化MOV AL,10000000BOUT DX,ALMOV DX,IOAPTMOV AL,11110000BOUT DX,ALRUN: MOV DX,IOAPT ;13路口绿灯,24路口红灯 MOV AL, 11110101BOUT DX,ALMOV DX,IOBPTMOV AL,11111010BOUT DX,ALMOV DX,IOCPTMOV AL,11111111BOUT DX,ALCALL DELAY_1 ;延时30秒MOV CX,05H ;闪烁5次STEP_1: MOV DX,IOBPTMOV AL,11111111B ;13路口黄灯,24路口红灯 OUT DX,ALMOV DX,IOCPTMOV AL,11111010BOUT DX,ALCALL DELAY_2MOV DX,IOCPTMOV AL,11111111BOUT DX,ALCALL DELAY_2LOOP STEP_1MOV DX,IOCPT ;13路口红灯,24路口绿灯 MOV AL,11111111BOUT DX,ALMOV DX,IOAPTMOV AL,11111010BOUT DX,ALMOV DX,IOBPTMOV AL,11110101BOUT DX,ALCALL DELAY_1 ;延时30秒MOV CX,05HSTEP_2: MOV DX,IOBPT ;13路口红灯,24路口黄灯 MOV AL,11111111BOUT DX,ALMOV DX ,IOCPTMOV AL,11110101BOUT DX,ALCALL DELAY_2MOV DX,IOCPTMOV AL,11111111BOUT DX,ALCALL DELAY_2LOOP STEP_2JMP RUN ;转移至RUN循环执行DELAY PROC NEAR ;软件延时子程序,通过设置指令的循环次数实现 PUSH CXPUSH AXMOV CX,0FFH ;循环次数D1: MOV AX,0FFFHD2: DEC AXJNZ D2LOOP D1POP AXPOP CXRETDELAY ENDPDELAY_1 PROC NEAR ;软件延时子程序,延时30秒PUSH CXPUSH AXMOV CX,1EH ;循环次数D3: CALL DELAYLOOP D3POP AXPOP CXRETDELAY_1 ENDPDELAY_2 PROC NEAR ;软件延时子程序,黄灯亮与灭的闪烁时间间隔, PUSH CXPUSH AXMOV CX,02H ;循环次数D4: CALL DELAYLOOP D4POP AXPOP CXRETDELAY_2 ENDPCODE ENDSEND START七、调试结果图3 图4图3: L3、L5、L9、L11发光,代表13路口红灯,24路口绿灯图4: L1、L6、L7、L12发光,代表13路口黄灯,24路口红灯。

交通灯设计-8255-8254(附连线图和源代码)doc资料

交通灯设计-8255-8254(附连线图和源代码)doc资料
OUT DX, AL
LED显示数NUM:
MOV BX, OFFSET TABLE1;取八段数码管表的首地址
MOV AL, NUM
XLAT;查表,找出NUM对应的共阴极字形代码
MOV DX, 1461H
OUT DX, AL;将该代码送到B口
打开试验箱电源,进入纯DOS环境运行程序,观察LED数码管显示情况。
数据流程图为:
图4-1流水灯数据流程图
2、用8255与LED KEYBOARD UNIT相连实现八段数码管的静态显示。
实验线路图如下图4-2所示:
图4-2静态显示实验的连线图
共阴极LED数码管字形代码如下表4-2所示:
表4-3共阴极LED数码管字形显示
字形
共阴极字形代码
字形
共阴极字形代码
字形
共阴极字形代码
5Hale Waihona Puke 用汇编语言编程使六个灯按交通灯变化规律“亮/灭”。交通灯变化规律要求:
① 南北路口的绿灯,东西路口的红灯同时亮30秒,且数码管30秒倒计时显示。
② 南北路口的黄灯闪烁3秒(三亮三灭),同时东西路口的红灯继续亮,且数码管3秒倒计时显示。
③ 南北路口的红灯,东西路口的绿灯同时亮20秒,且数码管20秒倒计时显示。
二、设计内容
1.用试验台提供的发光二极管(红绿黄各两支,共六支)作为南北路口(红绿黄各一支)和东西路口(红绿黄各一支)的模拟交通灯。
2.用可编程并行接口芯片8255A控制模拟交通灯的亮与灭和数码管的倒计时显示。
3.用可编程定时器/计数器芯片8253实现模拟交通灯亮与灭的时间延迟控制。
4.用数码管作为模拟交通灯亮与灭的时间延迟控制的倒计时显示。
功能模块图:
图3-1流水灯功能模块

实验4 8255并行口实验

实验4 8255并行口实验
实验4 8255并行接口实验
实验1
将8255的C口接逻辑电平开关K1-K8,A口接LED显示电路 D1-D8,注意CS0所接74LS138译码器的管脚,以及A0, A1的
接法,确定端口地址。将8255的A口和C口都设置为方式0,
编程完成查询方式,不断查询C口状态,如果Ki开关闭合, 则让Di发光二极管亮。
h
注:共阴极7段码,给1亮,给0不亮。
实验3
使用一片8254将1μs的脉冲信号源扩大定时到1s;每秒钟从
8255的PA口读入一组开关数据送PB口的LED显示灯显示;若
开关均闭合,则程序结束。
实验2
1、打开8255.ASM文件,结合程序注释提示填写控制字及端口
号。可看到现象:第i个开关Ki开关闭合,Di发光二极管亮。
2、在1完成后,通过手动调节开关,使得7段码依次显示字形: 0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F
a
f
g e d c
b
D7

ቤተ መጻሕፍቲ ባይዱD0
h g f e d c b a

实验四_交通信号灯模拟实验程序

实验四_交通信号灯模拟实验程序
实验四
8255A接 口 实 验 接
实验目的
进一步了解8255A芯片的结构及编程方 法,学习模拟交通控制的实现方法。
实验内容
用8255A做输出口,控制十二个发光二 极管燃灭,模拟交通灯管理。
实验接线图
实验程序框图
开始 8255A初始化
四个路口红灯亮
东西绿灯亮,南北红灯亮,延时Leabharlann 东西黄灯闪烁,南北红灯亮,延时
POP DJNZ POP DJNZ POP DJNZ RET
02H R2, DEL3 02H R2, DEL2 02H R2, DELY
JOD3:
JOD1:
MOV DPTR, #FF28H MOV A, #75H MOVX @DPTR, A INC DPTR MOV A, #0DH MOVX @DPTR,A;东西绿灯亮,南北红灯亮 MOV R2, #55H LCALL DELY ;延时 MOV R7, #05H ;闪烁次数 MOV DPTR, #0FF28H MOV A, #0F3H MOVX @DPTR, A
JOD0: MOV MOV MOV MOVX MOV MOV MOVX INC MOV MOVX MOV LCALL
ORG 0BB0H SP, #60H DPTR, #0FF2BH ;指向8255A控制字 A, #88H @DPTR, A ;8255A初始化 DPTR, #0FF28H ;指向A口,PA0~PA7 A, #0B6H @DPTR, A DPTR A, #0DH ;点亮4个红灯 @DPTR,A R2, #25H DELY
INC DPTR MOV A, #0CH MOVX @DPTR, A ;东西黄灯亮,南北红灯亮 MOV R2, #20H LCALL DELY ;延时 MOV DPTR, #0FF28H MOV A, #0F7H MOVX @DPTR, A INC DPTR MOV A, #0DH MOVX @DPTR, A ;东西黄灯灭,南北红灯亮 MOV R2, #20H LCALL DELY ;延时 DJNZ R7, JOD1 ;闪烁次数未到继续
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

..
’. 实验四8255A并行口实验-----交通灯控制
一、8255A并行口实验(二)目的
掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。

二、8255A并行口实验(二)内容
1、实验原理
实验原理图如图所示,PB4 ~ PB7和PC0 ~ PC7分别与发光二极管电路L1~ L12 相连,本实验为模拟交通灯实验。

交通灯的亮灭规律如下:
设有一个十字路口,1、3为南北方向,2、4为东西方向,初始为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车;
延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次以后,1、3 路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车;延时一段时间后,2、4 路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到1、3路口方向,之后重复上述过程。

8255A的PB4~ PB7对应黄灯,PC0 ~ PC3对应红灯,PC4~ PC7对应绿灯。

8255A工作于模式0,并置为输出。

由于各发光二极管为共阳极,使其点亮应使8255A相应端口清0。

2、实验线路连接
(1) 8255CS插孔连译码输出070H-07FH插孔。

(2) L1 - PC4 L4 - PC5 L7 - PC6 L10 - PC7
L2 - PB4 L5 - PB5 L8 - PB6 L11 - PB7
L3 - PC0 L6 - PC1 L9 - PC2 L12 - PC3
3、实验步骤
(1) 按图5-9连好实验线路
(2) 运行实验程序
在系统显示"DVCC-86H"状态下,按任意键,系统显示命令提示符"-"。

按GO键,显示"1000 XX"
输入F000 :B1B0
按EXEC键,在DVCC-8086H上显示"8255-2"。

同时L1~L12 发光二极管模拟交通灯显示。

三、实验程序
CODE SEGMENT
ASSUME CS:CODE
IOCONPT EQU 0073H
IOAPT EQU 0070H
IOBPT EQU 0071H
IOCPT EQU 0072H
IOBDATA EQU 0500H
CONTPORT EQU 00DFH DATAPORT EQU 00DEH
DATA1 EQU 0640H
START: JMP IOLED
IOLED: CALL FORMAT
CALL LEDDISP
MOV AX,0H
MOV DS,AX
MOV AL,82H
MOV DX,IOCONPT
OUT DX,AL
MOV DX,IOBPT
IN AL,DX
MOV BYTE PTR DS:[0501H],AL
MOV DX,IOCONPT
MOV AL,80H
OUT DX,AL
MOV DX,IOBPT
MOV AL,DS:[0501H]
OR AL,0F0H
OUT DX,AL
MOV DX,IOCPT
MOV AL,0F0H
OUT DX,AL
CALL DELAY1
IOLED0: MOV AL,10100101B
MOV DX,IOCPT
OUT DX,AL
CALL DELAY1
CALL DELAY1
OR AL,0F0H
OUT DX,AL
MOV CX,8H
IOLED1: MOV DX,IOBPT
MOV AL,DS:[0501H]
AND AL,10101111B
OUT DX,AL
..
’. CALL DELAY2
OR AL,01010000B OUT DX,AL
CALL DELAY2 LOOP IOLED1 MOV DX,IOCPT MOV AL,0F0H OUT DX,AL
CALL DELAY2 MOV AL,01011010B OUT DX,AL
CALL DELAY1 CALL DELAY1
OR AL,0F0H
OUT DX,AL
MOV CX,8H
IOLED2: MOV DX,IOBPT MOV AL,DS:[0501H]
AND AL,01011111B
OUT DX,AL
CALL DELAY2
OR AL,10100000B
OUT DX,AL
CALL DELAY2
LOOP IOLED2
MOV DX,IOCPT
MOV AL,0F0H
OUT DX,AL
CALL DELAY2
JMP IOLED0 DELAY1: PUSH AX
PUSH CX
MOV CX,0030H DELY2: CALL DELAY2 LOOP DELY2
POP CX
POP AX
RET
DELAY2: PUSH CX
MOV CX,8000H DELA1: LOOP DELA1
POP CX
RET
LEDDISP:MOV AL,90H
MOV DX,CONTPORT
OUT DX,AL
MOV BYTE PTR DS:[0600H],00 LED1: CMP BYTE PTR DS:[0600H],07H
JA LED2
MOV BL,DS:[0600H]
MOV BH,0H
MOV AL,CS:[BX+DA TA1]
MOV DX,DA TAPORT
OUT DX,AL
ADD BYTE PTR DS:[0600H],01H
JNZ LED1
LED2: RET
FORMAT: MOV BX,0
MOV WORD PTR DS:[BX+0640H],405BH
ADD BX,2
MOV WORD PTR DS:[BX+0640H],4040H
ADD BX,2
MOV WORD PTR DS:[BX+0640H],6D6DH
ADD BX,2
MOV WORD PTR DS:[BX+0640H],7F5BH
RET
CODE ENDS
END START。

相关文档
最新文档