四 8255A并行口实验-----交通灯控制教学提纲

合集下载

单片机课程设计基于8255A的交通灯

单片机课程设计基于8255A的交通灯

`目录第一章引言 (1)1.1设计目的 (1)1.2 设计背景 (1)1.3 设计要求 (2)第二章系统硬件设计 (3)2.1设计方案 (3)2.2工作原理 (3)2.3 硬件介绍 (4)2.3.1 MSC-51芯片简介 (4)2.3.2 8255A芯片 (5)第三章系统软件设计 (7)3.1 时间及信号灯的显示 (7)3.2 延时设计 (8)3.3 程序流程图 (9)3.4 程序源代码 (10)第四章系统调试结果 (15)4.1 测试结果 (15)小结 (16)参考文献 (17)第一章引言1.1设计目的1、通过交通信号灯控制系统的设计,掌握8255A并行口传输数据的方法,以控制发光二极管的亮与灭;2、用8255作为输出口,控制十二个发光二极管熄灭,模拟交通灯管理.3、通过单片机课程设计,熟练掌握汇编语言的编程方法,将理论联系到实践中去,提高我们的动脑和动手的能力;4、完成控制系统的硬件设计、软件设计、仿真调试。

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

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

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

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

在交通灯的通行与禁止时间控制显示中,通常要么东西、南北两方向各50秒;要么根据交通规律,东西方向60秒,南北方向40秒,时间控制都是固定的。

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

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

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

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

交通灯控制实验(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.参考文献本次课程设计以固定的程序实现对交通灯实行控制,没有实现智能化,但智能化是交通控制系统是交通控制系统发展的必然趋势,也是满足日益发展的社会需要。

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

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

D034D133D232D331D430D529D628D727PA04PA13PA22PA31PA440PA539PA638PA737PB018PB119PB220PB321PB422PB523PB624PB725PC014PC115PC216PC317PC413PC512PC611PC710RD 5WR 36A09A18RESET 35CS68255U36D0D1D2D3D4D5D6D7WRRD RSTA0A1PC5PC6PC7PC2PC3PC4PC0PC1DS35DS36DS37DS38DS39DS40DS4112345678VCCDS42A0A1CSCS1(0F000H)510R111510R112510R113510R114510R115510R116510R117510R118.MODEL TINYCOM_ADD EQU 0F003HPA_ADD EQU 0F000HPB_ADD EQU 0F001HPC_ADD EQU 0F002H.STACK 100.DATALED_Data DB 01111101B ;东西绿灯,南北红灯DB 11111101B ;东西绿灯闪烁,南北红灯DB 10111101B ;东西黄灯亮,南北红灯DB 11010111B ;东西红灯,南北绿灯DB 11011111B ;东西红灯,南北绿灯闪烁DB 11011011B ;东西红灯,南北黄灯亮.CODESTART: MOV AX,@DATAMOV DS,AXNOPMOV DX,COM_ADDMOV AL,80H ;PA、PB、PC为基本输出模式OUT DX,ALMOV DX,PA_ADD ;灯全熄灭MOV AL,0FFHOUT DX,ALLEA BX,LED_DataSTART1: MOV AL,0XLATOUT DX,AL ;东西绿灯,南北红灯CALL DL5SMOV CX,6START2: MOV AL,1XLATOUT DX,AL ;东西绿灯闪烁,南北红灯CALL DL500msMOV AL,0XLATOUT DX,ALCALL DL500msLOOP START2MOV AL,2 ;东西黄灯亮,南北红灯XLATOUT DX,ALCALL DL3SMOV AL,3 ;东西红灯,南北绿灯XLATOUT DX,ALCALL DL5SMOV CX,6START3: MOV AL,4 ;东西红灯,南北绿灯闪烁XLATOUT DX,ALCALL DL500msMOV AL,3XLATOUT DX,ALCALL DL500msLOOP START3MOV AL,5 ;东西红灯,南北黄灯亮XLATOUT DX,ALCALL DL3SJMP START1DL500ms PROC NEARPUSH CXMOV CX,60000DL500ms1: LOOP DL500ms1POP CXRETDL500ms ENDPDL3S PROC NEARPUSH CXMOV CX,6DL3S1: CALL DL500msLOOP DL3S1POP CXRETENDPDL5S PROC NEARPUSH CXMOV CX,10DL5S1: CALL DL500msLOOP DL5S1POP CXRETENDPEND START七、实验扩展及思考1、如何对8255的PC口进行位操作?控制字最高位写0,中间三位无关取0,接着三位是编码了对应的C口哪几位,最低一位为0是复位,为1是置位。

8255交通灯课程设计

8255交通灯课程设计

8255交通灯课程设计一、课程目标知识目标:1. 让学生掌握8255并行接口芯片的基本工作原理和功能特点。

2. 使学生了解交通灯控制系统的工作原理,并能运用8255芯片设计简单的交通灯控制电路。

3. 帮助学生理解并行接口在微机系统中的应用,培养他们对接口技术的兴趣。

技能目标:1. 培养学生运用8255芯片进行交通灯控制电路设计、编程和调试的能力。

2. 培养学生通过查阅资料、合作讨论等途径,解决实际问题的能力。

情感态度价值观目标:1. 培养学生热爱科学,严谨求实的科学态度。

2. 培养学生的团队协作精神,增强他们在实际项目中沟通、协调的能力。

3. 提高学生面对复杂问题的自信心,培养他们勇于克服困难的意志品质。

课程性质分析:本课程为电子信息类专业的实践课程,旨在通过8255交通灯控制系统的设计,帮助学生将理论知识与实际应用相结合,提高他们的动手能力和创新能力。

学生特点分析:本课程面向高年级学生,他们已经具备了一定的电子技术和编程基础,具有较强的学习能力和独立思考能力。

教学要求:1. 确保学生掌握8255芯片的基本知识和交通灯控制原理。

2. 注重培养学生的实际操作能力,鼓励他们自主学习和创新。

3. 结合实际项目,提高学生的团队协作能力和沟通能力。

二、教学内容1. 8255并行接口芯片的基本原理和功能特点:包括8255芯片的内部结构、工作模式、控制字等。

相关教材章节:第五章第二节“并行接口与8255芯片”2. 交通灯控制系统的设计与实现:介绍交通灯控制系统的工作原理,以及如何利用8255芯片设计交通灯控制电路。

相关教材章节:第五章第三节“8255芯片的应用实例”3. 编程与调试:指导学生使用汇编语言或C语言编写交通灯控制程序,并进行调试。

相关教材章节:第五章第四节“8255芯片的编程与应用”4. 实践操作:组织学生进行交通灯控制电路的搭建、编程和调试,培养他们的动手能力。

相关教材章节:第五章实验“8255交通灯控制系统设计与实现”5. 项目总结与评价:对学生的设计作品进行展示、讨论和评价,总结项目过程中的经验教训。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

微机原理课程设计—交通灯控制

微机原理课程设计—交通灯控制

交通信号灯的控制一、设计目的巩固“微机原理”课程学过的知识,加强理论与实践的联系。

通过本课程设计,使学生初步了解微机系统的硬件设备,学会 8086 系列编程指令的基本功能。

二、设计要求1、通过 8255A 并口来控制 LED 发光二极管的亮灭。

2、A 口控制红灯,B 口控制黄灯,C 口控制绿灯。

3、输出为 0 则亮,输出为 1 则灭。

4、用8253 定时来控制变换时间。

要求:设有一个十字路口,1、3 为南,北方向,2、4 为东西方向,初始态为 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 路口方向。

之后,重复上述过程。

三、流程图:四、真值表:五、电路图:电路图中地址线连接在 A2,A3 上,用 74HC139 译码,故地址范围为00H~03H,04H~07H,08H~0BH,每个芯片的 A0、A1 均与8086 的A0、A1 相连,RD、WR 与8086 的RD、WR 相连,以控制芯片的读写。

8253 使用定时器 0,输出接 8259 的IR0,故中断向量为08H。

13 方向的绿灯同 PC0 相连,24 方向的绿灯同 PC1 相连,红灯、黄灯接 PA、PB,方式同上。

六、源程序:;-------------------------------------------------------------;模块作用:交通灯控制;编程语言:汇编;编程:孙逸痕,本程序无版权,欢迎使用;日期:2011-12-11;-------------------------------------------------------------;---------STACK------------------------------------------STACK SEGMENT STACK 'STACK'DW 32 DUP(0)STACK ENDS;---------DATA--------------------------------------------DATA SEGMENTCOUNT_L EQU 0H ;计数器初值COUNT_H EQU 0HADD_8253_T0 EQU 00H ;芯片地址ADD_8255 EQU 04HADD_8259 EQU 08HRED_ADD EQU ADD_8255 ;PAYELLOW_ADD EQU ADD_8255+1 ;PBGREEN_ADD EQU ADD_8255+2 ;PCLIGHT_ON EQU 01H ;Pi1/Pi0=01 (i=A,B)LIGHT_OFF EQU 03H ;Pi1/Pi0=11SYS_COUNTER DB 18 ;系统频率GREEN_COUNTER DB 30 ;绿灯30 秒计数YELLOW_COUNTER DB 5 ;黄灯5 秒计数DATA ENDS;----------CODE------------------------------------------CODE SEGMENTMAIN PROC FARASSUME SS:STACK,CS:CODE,DS:DATA;----系统初始化--------PUSH DSMOV AX,0PUSH AXMOV ES,AXMOV AX,DATAMOV DS,AX;----中断向量----------MOV AX,OFFSET TIMER ;装入中断向量表MOV ES:20H,AXMOV AX,SEG TIMERMOV ES:22H,AX;----8253 定时器 0 初始化---MOV AL,36HOUT ADD_8253_T0,AL ;16 位,方式 3MOV AL,COUNT_L ;装入初值OUT MOV OUT ADD_8253_T0,AL AL,COUNT_H ADD_8253_T0,AL;----8255 初始化--------MOV AL,80H ;方式0OUT ADD_8255+3,AL;----8259 初始化--------MOV AL,13H ;单片,边沿触发OUT ADD_8259,ALMOV AL,8H ;中断类型码为 08H~0FHOUT ADD_8259+1,ALMOV AL,0DHOUT ADD_8259+1,AL;-----系统运行---------SYS_ON:IN AL,ADD_8259+1 ;开中断IRQ0AND AL,0FEHOUT ADD_8259+1,ALMOV AL,LIGHT_ON ;开13 方向绿灯,24 方向红灯,关黄灯OUT GREEN_ADD,ALNEG ALOUT RED_ADD,ALMOV AL,LIGHT_OFFOUT YELLOW_ADD,ALGRE_30:JMP $ ;等待计时中断DEC GREEN_COUNTER ;等待绿灯亮30 秒JNZ GRE_30MOV BX,OFFSET GREEN_COUNTER ;复位计数器MOV [BX],30MOV AL,LIGHT_OFF ;关绿灯,开黄灯OUT GREEN_ADD,ALMOV AL,LIGHT_ONOUT YELLOW_ADD,ALYEL_5: JMP $ ;等待计时中断MOV AL,LIGHT_ONMOV AH,03H ;取辅助值(用于黄灯状态取反)放在AH 中SUB AH,ALXOR AL,AH ;黄灯状态取反OUT YELLOW_ADD,ALDEC YELLOW_COUNTER ;计时值,每一秒改变一次状态,共5 秒JNZ YEL_5MOV BX,OFFSET YELLOW_COUNTER ;复位计数器MOV [BX],5MOV AL,LIGHT_ON ;点亮红灯OUT RED_ADD ,ALMOV BX,OFFSET LIGHT_ON ;将13 边换位 24 边MOV [BX],AHMOV AL,LIGHT_OFF ;熄灭黄灯OUT YELLOW_ADD,ALMOV AL,LIGHT_ON ;24 边绿灯亮UT GREEN_ADD,ALJMP SYS_ON ;循环RET;----中断函数------------TIMER: DEC SYS_COUNTER ; 是否计数18 次JNZ OVERMOV BX,OFFSET SYS_COUNTER ;复位计数器MOV [BX],18POP AXINC AXINC AXPUSH AXOVER: IRETMAIN ENDPCODE ENDSEND MAIN。

微机原理实验四实验报告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是置位。

8255A交通灯课程设计

8255A交通灯课程设计

摘要 (3)第一章问题概述 (4)1.1 设计题目 (4)1.2 设计目的 (4)1.3 仪器、设备及器材 (4)1.4 设计内容 (4)1.5 设计步骤 (4)1.6 思考题 (4)第二章交通灯设计方案 (4)2.1 方案设计 (5)2.2 状态分析 (5)第三章交通灯控制系统的实现 (7)3.1 扩展并行I/O口8255 (7)3.2 8255A芯片的工作方式0 (8)3.3 电路插接 (8)3.4 程序设计 (8)3.5 程序运行测试 (10)3.6 运行结果分析与问题回答 (11)第四章课程设计小结 (12)随着社会的发展,城市规模的不断扩大,城市交通成为制约城市发展的一大因素。

人口和汽车日益增长,市区交通也日益拥挤,人们的安全问题当然也日益重要。

因此,红绿交通信号灯成为交管部门管理交通的重要工具之一。

有了交通灯,人们的安全出行也有了很大的保障。

自从交通灯诞生以来,其内部的电路控制系统就不断的被改进,设计方法也开始多种多样,从而使交通灯显得更加智能化。

尤其是近几年来,随着电子与计算机技术的飞速发展,电子电路分析和设计方法有了很大的改进,电子设计自动化也已经成为现代电子系统中不可或缺的工具和手段,这些都为交通灯控制系统的设计提供了一定的技术基础。

本课程设计运用可编程并行接口芯片8255A作为扩展输出口,通过十二个发光二极管来模拟进行交通灯的燃灭管理,并详细阐述了其工作原理、基本功能框图、关键设计技术及软件工作流程,对选用芯片的特点进行了分析,并最后进行了软件实现,达到了系统要求的功能。

关键词:交通灯、8255A第一章问题概述1.1、设计题目8255A应用——交通灯控制1.2、设计目的●掌握8255A方式0的使用与编程方法● PC机及配套的接口电路实验装置● IC芯片:8255A应用1.3、仪器、设备及器材● PC机及配套的接口电路实验装置● IC芯片:8255A1.4、设计内容●采用8255A设计交通灯控制的接口方案●插接电路●编写控制程序1.5、设计步骤(1)方案设计考虑普通十字路口,交通灯的控制可分东西向和南北向两组,每组可用红、黄、绿三个灯进行交通管理,所以本方案要点是对六个交通灯进行控制。

实验5 可编程并行接口芯片8255A的使用

实验5 可编程并行接口芯片8255A的使用

(2)
编写程序,实现流水灯功能。
2、交通灯实验: (1实验连线: 1)该模块的WR、RD分别连到PC104总线接口模块的IOWR、IORD。选 通线CE连到IOY0。 2 )该模块的数据(AD0 ~AD7 )、地址线(A0 ~A7)分别连到PC104 总线接口模块的数据(D0~D7)、地址线(A0~A7)。 3)8255的PA0-L7、PA1-L6、PA2-L5、PA3-L3、PA4-L2、PA5-L1。 编制程序。
四、实验原理
五、实验步骤
1、流水灯实验: (1) 实验连线 1)该模块的WR、RD分别连到PC104总线接口模块的IOWR、IORD。 2 ) 该 模 块 的 数 据 ( AD0 ~ AD7 ) 、 地 址 线 ( A0 ~ A7 ) 分 别 连 到 PC104总线接口模块的数据(D0~D7)、地址线(A0~A7)。 3)8255模块选通线CE连到PC104总线接口模块的IOY0。 4 ) 8255 的PA0 ~ PA7 连到发光二极管的 L1 ~ L8 ;8255 的 PB0 ~ PB7 连 到发光二极管的L9~L16。
3、I/O输入输出实验: (1) 实验连线 该模块的WR、RD分别连到PC104总线接口模块的IOWR、IORD。 该模块的数据(AD0~AD7)、地址线(A0~A7)分别连到PC104总线接口 模块的数据(D0~D7)、地址线(A0~A7)。 8255模块选通线CE连到PC104总线接口模块的IOY0。 8255的PA0~PA7接开关K0~K7,8255的PB0~PB7接发光二极管L1~L8。 (2)编制程序。
实验4 可编程并行接口芯片8255A的使用
一、实验目的
了解可编程并行接口芯片8255的内部结构、工作方式 熟悉8255初始化编程及应用。

四 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

汇编语言 8255并行接口实验

汇编语言 8255并行接口实验

实验7 8255并行接口实验实验目的1.学习8255 芯片的使用方法;2.学习模拟交通灯控制的方法;实验设备PC机一台,THTWK-2实验箱一台实验要求1.编写程序,以8255 的C 口作为输出口,控制4 个双色LED 灯(可发红,绿,黄光),模拟十字路口交通灯管理。

2. 编写程序,以8255的C口作为输出口,用开关控制控制一排发光二极管的亮灭。

实验内容1及实验原理双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。

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

使用8255的端口C 控制双色灯。

8255的CS由CPLD输出,决定了8255的起始地址为40H。

8255的A0,A1地址线分别接了32位总线A2,A3,决定了A、B、C和状态口地址分别为40H、44H、48H和4CH。

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

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

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

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

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

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

最后循环至状态1。

注意:LED灯亮灭的间隔时间是由延时程序来控制的,如果计算机的速度过快,LED灯亮灭的间隔时间就比较短,实验现象就不明显。

可通过调整延时程序使实验现象更明显。

实验步骤1.接线:用8位数据线将8255模块的JD3D连接到32位LED显示模块的JD4B。

2.把D盘“程序”文件夹中Traffic.asm文件复制到BIN 路径下。

3.重起计算机进入MAXDOS,然后进入纯DOS环境。

使用cd命令到BIN 路径下,输入下面命令后回车。

4.编译:tasm /zi Traffic.ASM5.连接:tlink /v/3 Traffic.OBJ6.运行:Traffic.EXE运行结果如下图所示:按PC键盘(任意键),启动交通灯,再按PC键盘任意键,则程序退出。

8255a交通灯控制

8255a交通灯控制

一、课程设计目的:综合运用《微机原理与应用》课程知识,利用集成电路设计实现一些中小规模电子电路或者完成一定功能的程序,以复习巩固课堂所学的理论知识,提高软硬件设计能力及实现系统、绘制系统电路图的能力,为实际应用奠定一定的基础。

二、课程设计内容及要求:8255A 应用——交通灯控制 1)、设计目的● 掌握8255A 方式0的使用与编程方法● PC 机及配套的接口电路实验装置 ● IC 芯片:8255A 应用 2)、内容与原理 交通灯原理方框图8086介绍概念8086引脚图在学习8086 CPU 的引脚信号前,必须弄清CPU 最小模式和最大模式的概念。

所谓最小模式,就是在系统中只有一个8086微处理器,所有的总线控制信号都直接由8086 CPU8255 A8086LED 灯显示产生,因此,系统中的总线控制电路被减到最少。

最大模式是相对最小模式而言的。

在最大模式系统中,总是包含两个或多个微处理器,其中一个主处理器就是8086,其他的处理器称为协处理器,它们是协助主处理器工作的。

如数学运算协处理器8087,输入/输出协处理器8089。

8086 CPU到底工作在最大模式还是最小模式,完全由硬件决定。

当CPU处于不同工作模式时,其部分引脚的功能是不同的。

1.两种工作方式功能相同的引脚(1)AD15 ~AD0(address data bus):地址/数据总线,双向,三态。

这是一组采用分时的方法传送地址或数据的复用引脚。

根据不同时钟周期的要求,决定当前是传送要访问的存储单元或I/O端口的低16位地址,还是传送16位数据,或是处于高阻状态。

(2)A19/S6~A16/S3(address/status):地址/状态信号,输出,三态。

这是采用分时的方法传送地址或状态的复用引脚。

其中A19~A16为20位地址总线的高4位地址,S6~S3是状态信号。

S6表示CPU与总线连接的情况,S5指示当前中断允许标志IF的状态。

实验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 ;闪烁次数未到继续

实验名称:并行接口芯片8255A的应用

实验名称:并行接口芯片8255A的应用

上的输入值,那么,在闭合键所在的行线上的值必定为0。这样,当一
个键被按下时,必定可以读取一对唯一的行值和列值。

2、在程序设计时,将各个键对应的代码(列值,行值)放在一个
表中,程序通过查表来确定具体按下的为哪一个键。
3、8255的控制字如下:
1
D6
D5
D4
D3
D2
D1
D0

A组方式选择

00—方式0
A口全输出低电平,从B口读入数据 Y
列线全为高电平?
保存列值,延时去抖动
置8255控制字,A口为输入,B口为输出
往B口输出保存的列值
从A口读入行值
和键表比较 N
是否找到匹配键?
显示键入的字符
置8255控制字,A口为输出,B口为输入
A口全输出低电平,从B口读入数据 N 键释放了吗? Y 保存键入字符,返回
图2 键盘实验参考流程
8255A并行口的实验<二>
❖ 一、实验目的

掌握通过8255A并行口传输数据的方法,以控制LED发光二极管的亮
灭。❖ 二、实验内容 Nhomakorabea❖
用8255A的B端口和C端口控制12个LED发光二极管的亮和灭(输出
为0则亮,输出为1则灭)。

1、按下图连接硬件线路,即

①将PB4—PB7插孔与发光二极管的L1—L4相连;
❖ ①将8255A的CS端与218—21F插孔相连,此时
❖ 8255A的端口A地址为 218H

端口B地址为 219H

端口C地址为 21AH

控制口地址为 21BH
❖ ②将PAO—PA7;PBO—PB2与键盘部分连接的短路片插好。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

四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 - 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+DATA1]
MOV DX,DATAPORT
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
收集于网络,如有侵权请联系管理员删除。

相关文档
最新文档