预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

实验二8255A并行接口实验(一) 一实验目的 1、掌握通过8255A并行口传输数据控制LED发光二极管的亮灭;进一 步熟悉软件编程环境。 二实验设备 1、微机系统一套; 2、TPC-3型微机接口实验系统一台; 3、导线若干。 三实验内容 1、基础部分:用8255A的A端口控制8个LED发光二极管的亮和灭(端口 输出为1则亮,输出为0则灭)。其中L0―L2为东西方向,L5―L7为南北 方向、L3-L4不用,PA口与相应的发光二极管驱动信号输入端相连,输入端 为1时发光二极管亮。接线如图4-5所示。 图4-5 编制程序,通过8255A控制发光二极管,以模拟交通灯的管理。 2.提高部分:利用开关K0,K1的控制,以模拟几种交通灯的管理,具体要求 为: K0K1灯控制 00正常运行 01南北路口绿灯亮、东西路口红灯亮 10东西路口绿灯亮、南北路口红灯亮 3.如果模拟车流量大小来来决定红绿灯交通时间,请问你有什么解决办法。如果 能解决请加以解释并编程调试。 四、编程提示: 1.要完成本实验,首先必须了解交通灯的亮灭规律。设有一个十字路口,南 北、东西方向初始态为四个路口的红灯全亮。之后,南北路口的绿灯亮,东西 路口的红灯亮,南北路口方向通车。延迟一段时间后,南北路口的绿灯熄灭, 而南北路口的黄灯开始闪烁。闪烁8次后,南北路口的红灯亮,同时东西路口 的绿灯亮,东西路口方向开始通车。延迟一段时间后,东西路口的绿灯熄灭, 而黄灯开始闪烁。闪烁苦干次后,再切换到南北路口方向。之后,重复上述过 程。 2.程序中应设定好8255A的工作模式,使三个端口均工作于方式0,并处于 输出态 3.8255A的A端口地址为:288H B端口地址为:289H C端口地址为:28AH 控制口地址为:28BH 五、实验要求: 1.做好实验预习和准备工作,并写出预习报告(要求写出实验的流程图及程序), 熟练掌握8255A编程原理及编程方法。 2.实验操作的最低要求是要做出实验内容的基础部分,然后根据实际操作能力争 取做出实验内容的提高部分及回答实验内容的第三部分问题。 3.写出实验报告,内容为: 1)实验目的; 2)实验设备; 3)实验中遇到的问题及解决问题的分析思路与办法,问题定位及问题的性质; 4)对本实验的建议及有何创新。 ;这是自动生成的代码模板 STACKSSEGMENTSTACK;堆栈段 DW128DUP(?);注意这里只有128个字节 STACKSENDS DATASSEGMENT;数据段 ;请在这里定义您的数据 DATASENDS CODESSEGMENT;代码段 ASSUMECS:CODES,DS:DATAS START:MOVAX,DATAS;初始化 MOVDS,AX MOVAL,80H MOVDX,028BH OUTDX,AL MOVAL,84H;初态红灯全亮 MOVDX,288H OUTDX,AL MOVCX,30 D1:MOVAL,24H;南北绿灯亮,东西红灯亮 MOVDX,288H OUTDX,AL CALLDELAY LOOPD1 MOVCX,8 D2:MOVAL,44H;南北黄灯亮,东西红灯亮 MOVDX,288H OUTDX,AL CALLDELAY MOVAL,04H MOVDX,288H OUTDX,AL CALLDELAY LOOPD2 MOVCX,30 D3:MOVAL,81H;南北红灯亮,东西绿灯亮 MOVDX,288H OUTDX,AL CALLDELAY LOOPD3 MOVCX,8 D4:MOVAL,82H:南北红灯亮,东西黄灯亮 MOVDX,288H OUTDX,AL CALLDELAY MOVAL,80H MOVDX,288H OUTDX,AL CALLDELAY LOOPD4 MOVAH,01H INT16H JZD1 MOVAX,4C00H;退出程序 INT21H DELAYPROCNEAR PUSHCX PUSHDI MOVCX,9000H Y1:MOVDI,5000H X1:DECDX JNZX1 LOOPY1 POPDI POPCX RET DELAYENDP CODESENDS ENDSTART MY8255_AEQU288H MY8255_BEQU289H MY8255_CEQU28AH MY8255_MODEEQU28BH STACKSSEGMENTSTACK;堆栈段 DW128DUP(?);注意这里只有128个字节 STACKSENDS DATASSEGMENT;数据段 ;请在这里定义您的数据 DATASENDS CODESSEGMENT;代码段 ASSUMECS:CODES,DS:DATAS STAR