文档库 最新最全的文档下载
当前位置:文档库 › 8255并行口实验实验报告

8255并行口实验实验报告

8255并行口实验实验报告
8255并行口实验实验报告

8255并行口实验实验报告

作者:

一、实验目的

掌握8255A的编程原理。

二、实验设备

CPU挂箱、8086CPU模块。

三、实验内容

8255A的A口作为输入口,与逻辑电平开关相连。8255A的B口作为输出口,与发光二极管相连。编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。

四、实验原理介绍

本实验用到两部分电路:开关量输入输出电路和8255可编程并口电路。

五、实验步骤

1、实验接线

CS0?CS8255; PA0~PA7?平推开关的输出K1~K8; PB0~PB7?发光二极管的输入LED1~LED8。

2、编程并全速或单步运行。

3、全速运行时拨动开关,观察发光二极管的变化。当开关某位置于L 时,对应的发光二极管点亮,置于H时熄灭。

六、实验提示

实验也是如此。实验中,8255A工作于基本8255A是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为辅助控制用,本输入输出方式(方式0)。

七、实验结果

程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:K2置于L位置,则对应的LED2应该点亮。

八、程序框图(实验程序名:t8255.asm)

开始

设置8255工作方式

读A口

输出至B口

结束

九、程序源代码清单:

assume cs:code

code segment public

org 100h

start: mov dx,04a6h ;控制寄存器地址

mov ax,90h ;设

置为A口输入,B口输出

out dx,ax

mov al,0feh

start1:mov dx,04a2h 芯片的

入口地址

out dx,al

mov bl,al

mov dx ,04a0h

in al,dx

test ax,01h

jz strat2

mov al ,bl rol al,1 流水灯循环左移

mov bl,al

mov cx,3000h 设置cx为灯闪烁时间对应的循环次数

add:

loop add

jmp start1 无条件跳转至start1 strat2:mov al,bl

mov dx,04a2h

out dx,al

ror al,1 流水灯循环左移

mov bl, al

mov cx,3000h

add1:

loop add

jmp start 无条件跳转至start code ends

end start

十、实验总结

通过该实验,掌握了8255A的编程原理,学会了用汇编语言来编写程序控制8255A进行流水灯的操作实验。

8255并口实验详解

xxxx大学计算机学院实验报告

一、实验内容与要求 1.1 实验内容 (1)8255方式0实验 从8255端口C输入数据,再从端口A输出 (2)8255方式1输出实验 编程实现每按一次单脉冲按钮产生一个正脉冲,使8255产生一次中断服务:依次输出01H,02H,04H,08H,10H,20H,40H,80H使L0~L7依次发光,中断8次结束。 (3)8255方式1输入实验 编程实现:每按一次单脉冲按钮产生一个正脉冲使8255产生一次中断请求,让CPU进行一次中断服务:读取逻辑电平开关预置的ASCII码,在屏幕上显示其对应的字符,中断8次结束。 1.2 实验要求 (1)8255方式0实验 实验预期效果:拨动逻辑开关,启动程序,开关打开的对应灯可以亮起。改变开关的状态,灯的亮暗也随之改变。 (2)8255方式1输出实验 实验预期效果:按一次单脉冲按钮,L0亮起;以后每按一次,后面的灯依次会亮起。中断8次结束。 (3)8255方式1输入实验 实验预期效果:每按一次单脉冲按钮读取逻辑电平开关预置的ASCII码,在屏幕上显示其对应的字符,中断8次结束。 二、实验原理与硬件连线 2.1 实验原理 CPU通过指令将控制字写入8255A的控制端口设置它的工作方式。8255A有两个控制字:方式选择控制字和端口C置位/复位控制字,这两个控制字均写入同一个控制端口地址(端口选择

先A1A0=11) 8255A有3种工作方式:方式0——基本输入/输出方式;方式1——选通输入/输出方式;方式2——双向传输方式。方向选择控制字用于设置各端口的工作方式。 方式0称为基本输入/输出方式。该方式下,端口A、端口B、端口C的高4位和端口C的低4位均可独立地设为输入或输出数据端口。在方式0时,8255A与CPU时间没有应答联络信号,可用于无条件传送或查询方式数据传送场合。采用查询方式传送时,可以将端口A、端口B 作为数据端口,用端口C存放外部设备状态信息,用于CPU查询。 方式1称为选通输入/输出方式。该方式下,端口A、端口B可作为数据传输口,而端口C 的一些引脚规定作为端口A、端口B的联络控制信号,有固定的搭配规定。在方式1时,CPU和8255A之间有应答联络信号,所以采用中断方式或程序查询方式传送数据。 当端口A作为方式1输入时,端口C的PC3、PC4、PC5作为端口A的联络控制信号。 当端口A作为方式1输出时,端口C的PC7、PC6、PC3作为端口A的联络控制信号。 状态字通过读端口C获得。需要强调,从端口C读出的状态字与端口C的外部引脚的状态无关。 2.2 硬件连线 (1)8255方式0实验1 连接实验电路,8255端口C接逻辑电平开关K0~K7,端口A接LED显示电路 L0~L7 U18 8255 K0 K1 K5 L0 L1 L2 L3 L4 L5 L6 L7图2-2-1 实验一接线

交通灯实验报告

交通控制器设计实验 一.实验目的 1.了解交通灯的亮灭规律。 2.了解交通灯控制器的工作原理。 3.进一步熟悉VHDL语言编程,了解实际设计中的优化方案。二.实验任务 设计一个十字路口交通控制系统,其东西,南北两个方向除了有红、黄、绿灯指示是否允许通行外,还设有时钟,以倒计时方式显示每一路允许通行的时间,绿灯,黄灯,红灯的持续时间分别是40、5和45秒。当东西或南北两路中任一道上出现特殊情况,例如有消防车,警车要去执行任务,此时交通控制系统应可由交警手动控制立即进入特殊运行状态,即两条道上的所有车辆皆停止通行,红灯全亮,时钟停止计时,且其数字在闪烁。当特殊运行状态结束后,管理系统恢复原来的状态,继续正常运行。 三.原理分析 本系统主要由计数控制器和倒计时显示器电路组成。计数控制器实现总共90秒的计数,90秒也是交通控制系统的一个大循环;控制器控制系统的状态转移和红黄绿灯的信号输出;倒计时显示器电路实现45秒倒计时和显示功能。整个系统的工作时序受控制器控制,它是系统的核心。 控制器的整个工作过程用状态机进行描述,其状态转移关系如下图所示。五种状态描述如下: s0:东西方向红灯亮,南北方向绿灯亮,此状态持续40秒的时间; s1:东西方向红灯亮,南北方向黄灯亮,此状态持续5秒的时间;

s2:东西方向绿灯亮,南北方向红灯亮,此状态持续40秒的时间; s3:东西方向黄灯亮,南北方向红灯亮,此状态持续5秒的时间; s4:紧急制动状态,东西方向红灯亮,南北方向红灯亮,当紧急制动信号有效(hold=’0’)时进入这种状态。 当紧急制动信号无效(hold=’1’)时,状态机按照s0→s1→s2→s3→s0循环;当紧急制动有效(hold=’0’)时,状态机立即进入s4,两个方向红灯全亮,计数器停止计数;当紧急制动信号再恢复无效时,状态机会回到原来的状态继续执行。 四.电路设计 交通控制器系统顶层原理图如下图所示,它由计数控制器(control),45秒倒计时计数器(M45)模块组成。下面主要介绍计数控制器和倒计时计数器M45的设计方法。

实验 并行IO口8255扩展

实验三并行I/O口8255扩展 一、实验目的 1、了解8255A芯片的结构以及编程方法 2、掌握通过8255A并行口读取开关数据的方法 二、实验说明 本次实验用通过8255扩展接口,仅通过P0端口控制8只集成式7段数码管的显示控制。8255A的PA、PB 端口分别连接8位数码管的段码和位码,程序控制数码管滚动显示一串数字。 三、实验线路图 四、实验步骤 1、先建立文件夹“ex3”,然后建立“ex3”工程项目,最后建立源程序文件“ex3.c”,输入如下源程序;/******************************************* 实验3:用8255实现接口扩展 ******************************************/ #include #include #define uchar unsigned char

#define uint unsigned int //PA,PB,PC端口及命令端口地址定义 #define PA XBYTE[0x0000] //定义8255A地址 #define PB XBYTE[0x0001] //定义8255B地址 #define PC XBYTE[0x0002] //定义8255B地址 #define COM XBYTE[0x0003] //定义8255B控制寄存器地址 //待显示字符队列编码 uchar code DSY_CODE_Queue[ ]= {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xA4,0xC0,0xC0,0x80,0xC0,0x80,0xF9,0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; //共阳极的7段集成式数码管对应编码 // 0:0xc0 // 1:0xcf // 2:0xa4 // 3:0xb0 // 4:0x99 // 5:0x92 // 6:0x82 // 7:0xf8 // 8:0x80 // 9:0x90 // A:0x88 // B:0x83 // C:0xc6 // D:0xa1 // E:0x86 // F:0x8e // DOT:0x7f //数码管选通 uchar DSY_Index[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; //延时 void DelayMS (uint ms) {uchar i; while(ms--) for (i=0;i<120;i++); } /********主程序********/ void main( ) { uchar i,j,k; //8255工作方式选择:PA,PB均输出,工作方式0 COM=0x80; while(1)

微机原理与接口技术实验五报告8255 并行接口实验

电子信息专业实验报告 课程微机原理与接口技术实验 实验题目8255并行接口实验 学生姓名lz评分 学号20171414xxxxxxx班级 同实验者 实验时间2019.11.9上午地点望江实验室基B520电子信息学院专业实验中心

一、实验目的 1、掌握8255A的工作原理 2、掌握8255A的编程方法 二、实验内容(含技术指标) 1、8255A的A口作为输入口,与逻辑电平开关相连。8255A的B口作为输出口,与发光二极管相连。编辑程序,单步运行,调试程序; 2、K1~K8控制LED1~LED8 3、K1控制LED1、LED2;K2控制LED3、LED4 K3控制LED5、LED6;K4控制LED7、LED8 4、K置H,对应LED亮;K置L,对应LED灭 5、全速运行程序,观看实验结果。 三、实验仪器(仪器名称、型号,元器件名称、清单,软件名称、版本等) 清华同方微机;8086单片机原理实验系统;EL型微机试验箱 四、实验原理(基本原理,主要公式,参数计算,实现方法及框图,相关电路等) 1、开关量输入输出电路 开关量输入电路由8只开关组成,每只开关有两个位置H和L,一个位置代表高电平,一个位置代表低电平。对应的插孔是:K1~K8。开关量输出电路由8只LED组成,对应的插孔分别为LED1~LED8,当对应的插孔接低电平时LED点亮,其原理见图一。 2、8255并行接口电路 该电路由1片8255组成,8255的数据口、地址、读写线、复位控制线均已接好,片选输入端插孔为8255CS,A,B,C三端口的插孔分别为:PA0~PA7,PB0~PB7,PC0~PC7,电路原理见图二。 3、8255A工作基本输入输出方式

实验6.1_8255并行接口与交通灯控制

8255端口地址: 控制寄存器地址28BH A口的地址288H B口的地址289H C口的地址28AH 实验程序: DATA SEGMENT BUF1 EQU 00100100B ;南北绿灯亮东西红灯亮BUF2 EQU 01000100B ;南北黄灯亮东西红灯亮BUF3 EQU 00000100B ;南北灯灭东西红灯亮BUF4 EQU 10000001B ;南北红灯亮东西绿灯亮BUF5 EQU 10000010B ;南北红灯亮东西黄灯亮BUF6 EQU 10000000B ;南北红灯亮东西灯灭DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX,DATA MOV DS,AX MOV AL,80H MOV DX,28BH OUT AX,AL ALL: MOV AL,BUF1 MOV DX,28AH OUT DX,AL CALL DELAYL MOV CX,5 YEL1: MOV AL,BUF2 MOV DX,28AH OUT DX,AL CALL DELAYS MOV AL,BUF3 MOV DX,28AH OUT DX,AL CALL DELAYS LOOP YEL1 MOV AL,BUF4 MOV DX,28AH OUT DX,AL CALL DELAYL MOV CX,4 YEL21: MOV AL,BUF5 MOV DX,28AH

OUT DX,AL CALL DELAYS MOV AL,BUF6 MOV DX,28AH OUT DX,AL CALL DELAYS LOOP YEL2 JMP ALL MOV AH,4CH INT 21H DELAYL PROC NEAR ;长延时 PUSH CX PUSH DI Y1:MOV CX,2000H X1:MOV DI,2000H DEC DI JNE X1 LOOP Y1 POP DI POP CX RET DELAYL ENDP DELAYS PROC NEAR ;短延时 PUSH CX PUSH DI Y2:MOV CX,500H X2:MOV DI,1000H DEC DI JNE X2 LOOP Y2 POP DI POP CX RET DELAYS ENDP CODE ENDS END START 桂林电子科技大学信息与通信学院

交通灯实验报告

微机原理课程设计报告 新疆农业大学 计算机与信息工程学院 课程题目:微机原理与几口技术 班级:电科112 指导老师:张婧婧 姓名:刘建国 学号:114633222

基于8086的交通信号控制器的设计报告摘要: 这次课程设计,我们的任务是:基于8086的交通信号控制器的设计。8086系统是我们这个学期学习的主线方向,我们将在8086系统的基础上完成交通信号控制器的设计,其具体功能是:1.显示十字路口东西、南北2个方向的红、黄、绿的指示状态。2.实现正常的倒计时功能。用2组数码管作为东西和南北方向的倒计时显示,显示时间为红灯30s,绿灯50s,黄灯5s。3.按S1键能实现特殊的功能,显示倒计时的2组数码管闪烁,计数器停止计数并保持在原来的状态;东西、南北路口均显示红灯状态;特殊状态解除后能继续计数。4.按S2键实现总体清零功能。计数器由初始状态计数,对应的指示灯亮。 关键词:8086系统 74154 74HC373 8255A LED交通灯

(一) 1) 设计目的 交通信号控制灯是日常交通不可缺少的工具,涉及到人们的人生和财产安全,在道路行驶上起了相当关键的作用,因而设计交通信号控制灯是非常有意义的。同时我们这次设计的课题就是“基于8086交通信号控制器的设计”,基于以上目的,我利用一周时间精心设计出课题要求的交通灯。 2) 设计思想 在此次设计过程中,我们选择了数码管、发光二极管、74LS138、74LS373、8255A和8086来控制实现交通灯按设计要求工作。 3)硬件部分 1、LED设计说明: 用LED作为倒计时时间的显示器,LED在亮度、功耗、可视角度和刷新速率等方面,都更具优势。LED与LCD的功耗比大约为10:1,利用LED技术,可以制造出比LCD更薄、更亮、更清晰的显示器,LED是发光二极管属于二极管的一种,LCD是液晶显示器,两者相差太多.但是用LED的点阵也能组成显示器,适用于户外大屏幕显示,分辨率较低,LED与LCD具体比较如下图 表1-1:LCD与LED的比较 2、8255设计说明: 用8255A可编程并行接口芯片的A、B、C三口作为红、绿、黄交通灯的控制输入口。8255有三个并行输入输出口,可以方便的对三种颜色的交通灯进行很好的控制。解决方案是:PB0~PB7接模拟灯二极管,PA0~PA7接7段二极管的段选,PC0~PC3接7段二极管的位选,PC4~PC7与开关相连,处理器芯片集成芯片卡PCI卡连接,用于完成硬件方面的实验正常通信。其芯片比较说明:如下表: 表1-2:8255A与8251芯片的比较

实验二 8255A并行接口实验

实验二 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)对本实验的建议及有何创新。 ;这是自动生成的代码模板 STACKS SEGMENT STACK ;堆栈段 DW 128 DUP(?) ;注意这里只有128个字节 STACKS ENDS DATAS SEGMENT ;数据段 ;请在这里定义您的数据 DATAS ENDS CODES SEGMENT ;代码段 ASSUME CS:CODES,DS:DATAS START: MOV AX,DATAS ;初始化 MOV DS,AX

8086软硬件实验报告(微机原理与接口技术上机实验)

实验一实验环境熟悉与简单程序设计 实验目的 (1)掌握DEBUG调试程序的使用方法。 (2)掌握简单程序的设计方法。 实验内容 编程将BH中的数分成高半字节和低半字节两部分,把其中的高半字节放到DH中的低4位(高4位补零),把其中的低半字节放到DL中的低4位(高4位补零)。如: BH=10110010B 则运行程序后 DH=00001011B DL=00000010B 实验准备 (1)熟练掌握所学过的指令。 (2)根据实验内容,要求预先编好程序。 实验步骤 (1)利用DEBUG程序输入、调试程序。 (2)按下表要求不断地修改BH的内容,然后记录下DX的内容。 实验报告 (1)给出程序清单。 (2)详细说明程序调试过程。

程序: CODE SEGMENT START : MOV BH,00111111B MOV AL,BH MOV CL,4 SHR AL,CL MOV DH,AL MOV AL,BH AND AL,00001111B MOV DL,AL MOV CL,0 CODE ENDS END START

实验二简单程序设计 实验目的 (3)掌握DEBUG调试程序的使用方法。 (4)掌握简单程序的设计方法。 实验内容 试编写一个汇编语言程序,要求实现功能:在屏幕上显示:Hello world My name is Li Jianguo 参考程序如下:(有错) data segment out1 db 'Hello world' ax db 'My name is Li Jianguo' data ens code segment assume cs:code;ds:data lea dx,out1 mov ah,2 int 21h mov dl,0ah mov ah,2

8255并行口实验实验报告

8255并行口实验实验报告 作者: 一、实验目的 掌握8255A的编程原理。 二、实验设备 CPU挂箱、8086CPU模块。 三、实验内容 8255A的A口作为输入口,与逻辑电平开关相连。8255A的B口作为输出口,与发光二极管相连。编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。 四、实验原理介绍 本实验用到两部分电路:开关量输入输出电路和8255可编程并口电路。 五、实验步骤 1、实验接线 CS0?CS8255; PA0~PA7?平推开关的输出K1~K8; PB0~PB7?发光二极管的输入LED1~LED8。 2、编程并全速或单步运行。 3、全速运行时拨动开关,观察发光二极管的变化。当开关某位置于L 时,对应的发光二极管点亮,置于H时熄灭。 六、实验提示 实验也是如此。实验中,8255A工作于基本8255A是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为辅助控制用,本输入输出方式(方式0)。 七、实验结果 程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:K2置于L位置,则对应的LED2应该点亮。 八、程序框图(实验程序名:t8255.asm)

开始 设置8255工作方式 读A口 输出至B口 结束 九、程序源代码清单: assume cs:code code segment public org 100h start: mov dx,04a6h ;控制寄存器地址 mov ax,90h ;设 置为A口输入,B口输出 out dx,ax mov al,0feh start1:mov dx,04a2h 芯片的 入口地址 out dx,al mov bl,al mov dx ,04a0h in al,dx test ax,01h jz strat2 mov al ,bl rol al,1 流水灯循环左移 mov bl,al mov cx,3000h 设置cx为灯闪烁时间对应的循环次数 add: loop add jmp start1 无条件跳转至start1 strat2:mov al,bl mov dx,04a2h out dx,al ror al,1 流水灯循环左移 mov bl, al mov cx,3000h add1: loop add jmp start 无条件跳转至start code ends end start 十、实验总结 通过该实验,掌握了8255A的编程原理,学会了用汇编语言来编写程序控制8255A进行流水灯的操作实验。

plc红绿灯实验报告

竭诚为您提供优质文档/双击可除plc红绿灯实验报告 篇一:交通灯pLc控制实验报告 交通灯的pLc控制实验报告 学院:自动化学院班级:0811103姓名:张乃心学号:20XX213307 实验目的 1.熟悉pLc编程软件的使用和程序的调试方法。2.加深对pLc循环顺序扫描的工作过程的理解。3.掌握pLc的硬件接线方法。 4.通过pLc对红绿灯的变时控制,加深对pLc按时间控制功能的理解。5.熟悉掌握pLc的基本指令以及定时器指令的正确使用方法。 实验设备 1.含可编程序控制器microLogix1500系列pLc的Demo 实验箱一个 2.可编程序控制器的编程器一个(装有编程软件的pc 电脑)及编程电缆。3.导线若干

实验原理 交通指挥信号灯图 I/o端子分配如下表 注:pLc的24VDc端接Demo模块的24V+;pLc的com端接Demo模块的com。 系统硬件连线与控制要求 采用1764-L32Lsp型号的microLogix1500可编程控制器,进行 I/o端子的连线。它由220VAc供电,输入回路中要串入24V直流电源。1764系列可编程控制器的产品目录号的各位含义如下示。1764:产品系列的代号L:基本单元 24:32个I/o点(12个输入点,12个输出点)b:24V 直流输入w:继电器输出 A:100/240V交流供电 下图为可编程控制器控制交通信号灯的I/o端子的连线图。本实验中模拟交通信号灯的指示灯由24V直流电源供电。o/2-o/4为南北交通信号灯,o/5-o/7为东西交通信号灯。 实现交通指挥信号灯的控制,交通指挥信号灯的布置,控制要求如下:(1)信号灯受一个启动开关控制,当启动开关接通时,信号灯系统开始正常工作,且先南北红灯亮,东西绿灯亮。当启动开关断开时,所有信号灯熄灭。 (2)南北红灯维持25秒。在南北红灯亮的同时东西绿

8255A并行口实验

实验四 1

OUT DX,AL INC DX OUT DX,AL MOV CX,0800H LOOP $ NOT AL JMP P11 CODE ENDS END H1 8255A并行口实验㈡PA输入、PB输出 一、实验目的 ⑴掌握8255A和微机接口方法。 ⑵掌握8255A的工作方式和编程原理。 二、实验内容 用8255 PA作开关量输入口,PB作输出口。 编程提示 8255A芯片简介 8255A可编程外围接口芯片是Intel公司生产的通用并行接口芯片,它具有A、B、C三个并行接口,用+5V电源供电,能在以下三种方式下工作: 方式0:基本输入/输出方式 方式1:选通输入/输出方式 方式2:双向选通工作方式 使8255A端口A工作在方式0并作为输入口,读取K1—K8八个开关量,送PB 口显示。PB口工作在方式0作为输出口。 实验步骤 ⑴按实验电路图连接线路: ①8255A芯片A口的AP0~PA7依次和开关量输入插孔K1~K8相连。 ②8255A芯片B口的AB0~PB7依次接L1~L8 ⑵运行实验程序。 在系统处“P.”状态时,输入32E0,按EXEC键, 拨动K1~K8、L1~L8会跟着亮灭。 -----------------硬件实验二8255A并行口实验(2) PA输入,PB输出------------- CODE SEGMENT 2

ASSUME CS:CODE,DS:CODE,ES:CODE ORG 32E0H PA EQU 0FFD8H PB EQU 0FFD9H PC EQU 0FFDAH PCTL EQU 0FFDBH H2: MOV DX,PCTL MOV AL,90H OUT DX,AL P2: MOV DX,PA IN AL,DX INC DX OUT DX,AL JMP P2 CODE ENDS END H2 3

红绿灯实验报告

实验报告 班级:学号: 姓名:日期: 实验一、红绿灯控制 一、实验目的 熟悉软件的使用,掌握plc编程的方法,编写程序控制十字路口的红绿灯。 二、实验设备 一台安装有STEP 7-MivroWIN4.0与S7200_simulation的电脑。 三、控制要求分析 实验利用PLC控制十字路口的红绿灯。十字路口的红绿灯分为横向控制灯和纵向控制灯,每个方向有红、绿、黄3种颜色的控制灯。 当电路接通,双向红绿灯开始正常工作,横向的绿灯和纵向的红灯先亮。横向的绿灯亮维持8s,在横向绿灯亮的同时纵向的红灯也亮起,并维持10s。第8秒时横向的绿灯熄灭,同时亮起黄灯并维持2s后熄灭。第10s时,横向黄灯熄灭的同时亮起红灯并维持10s,同时纵向的绿灯亮起并维持8s。当纵向绿灯熄灭并亮起黄灯持续2s后红灯亮起,同时横向的绿灯也亮起并维持8s到此一个循环就此结束下一个循环开始。当按下紧停按钮时两路同时亮黄灯2s后,其中一路亮红灯另一路亮绿灯。本实验设置了两个紧停按钮。 四、PLC的I/O分析 I0.1,I0.2两个紧停按钮。M0.1,M0.2中间继电器。 Q0.0横向绿灯,Q0.1横向黄灯,Q0.2横向红灯, Q0.3纵向红灯,Q0.4纵向绿灯,Q0.5纵向黄灯。 T37、T41为8s定时器, T38、T42为2s定时器, T39、T40为10s定时器。 五、PLC梯形图程序及指令表程序

梯形图程序:

指令表程序: LD I0.1 = M0.1 Network 2 LDN M0.2

AN T37 LDN M0.1 A T38 A M0.2 OLD = Q0.0 Network 3 LDN M0.2 AN M0.1 AN T39 TON T37, 80 Network 4 LDN M0.2 AN M0.1 AN T38 A T37 LDN M0.2 AN T38 A M0.1 OLD LDN M0.1 AN T38 A M0.2 OLD = Q0.1 Network 5 LDN M0.1 AN M0.2 A T37 LDN M0.2 A M0.1 OLD LDN M0.1 A M0.2 OLD TON T38, 20 Network 6 LDN M0.2 AN M0.1 AN T39 A T38 LDN M0.2 A T38

8255并行接口实验

8255并行接口实验 4.5.1 实验目的 1. 学习并掌握8255的工作方式及其应用。 2. 掌握8255典型应用电路的接法。 3. 掌握程序固化及脱机运行程序的方法。 4.5.2 实验设备 PC 机一台,TD-PITE 实验装置或TD-PITC 实验装置一套。 4.5.3 实验内容 1. 基本输入输出实验。编写程序,使8255的A 口为输入,B 口为输出,完成拨动开关到数据灯的数据传输。要求只要开关拨动,数据灯的显示就发生相应改变。 2. 流水灯显示实验。编写程序,使8255的A 口和B 口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。 4.5.4 实验原理 I/O I/O I/O I/O PA7-PA0 PC7-PC4 PC3-PC0 PB7-PB0 图4.31 8255内部结构及外部引脚图 并行接口是以数据的字节为单位与I/O 设备或被控制对象之间传递信息。CPU 和接口之间的数据传送总是并行的,即可以同时传递8位、16位或32位等。8255可编程外围接口芯片是Intel 公司生产的通用并行I/O 接口芯片,它具有A 、B 、C 三个并行接口,用+5V 单电源供电,能在以下三种方式下工作:方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。8255的内部结构及引脚如图4.31所示,8255工作方式控制字和C 口按位置位/复位控制字格式如图4.32所示。

位(a )工作方式控制字 (b )C 口按位置位/复位控制字 1 图4.32 8255控制字格式 8255实验单元电路图如图4.33所示: 图4.33 8255实验单元电路图 4.5.5 实验步骤 1. 基本输入输出实验 本实验使8255端口A 工作在方式0并作为输入口,端口B 工作在方式0并作为输出口。用一组开关信号接入端口A ,端口B 输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。具体实验步骤如下述: (1)实验接线图如图4.34所示,按图连接实验线路图。 (2)编写实验程序,经编译、连接无误后装入系统。 (3)运行程序,改变拨动开关,同时观察LED 显示,验证程序功能。 (4)点击“调试”下拉菜单中的“固化程序”项,将程序固化到系统存储器中。 (5)将短路跳线JDBG 的短路块短接到RUN 端,然后按复位按键,观察程序是否正常运行;关闭实验箱电源,稍等后再次打开电源,看固化的程序是否运行,验证程序功能。 (6)实验完毕后,请将短路跳线JDBG 的短路块短接到DBG 端。

红绿灯实验报告

课程设计 《微机原理与接口技术》 2012~2013学年第一学期 目录 学院(部)电子电气工程学院 学号021210134 姓名崔平 授课教师戎自强

目录 一、课程设计的目的 (1) 二、设计的题目及要求 (1) 2.1、题目(一) (1) 2.2、题目(二) (1) 三、设计的内容及程序 (1) 3.1对于题目(一)的分析与设计 (2) 3.1.1设计的程序流程图 (2) 3.1.2设计的程序 (3) 3.1.3调试结果和程序结果分析 (4) 3.2对设计题(二)的分析与设计 (4) 3.2.1实验电路及连线 (4) 3.2.2设计程序流程图 (5) 3.2.3设计的程序 (6) 3.2.4结果分析 (9) 3.2.5程序拓展内容 (9) 四、扩展内容 (13) 4.1、关于行人闯红灯的扩展 (13) 4.2、关于黄灯问题的扩展 (15) 五、心得体会 (18) 六、参考文献 (19)

微机课程设计报告 一、课程设计的目的 课程设计有利于基础知识的理解和逻辑思维的锻炼。本课程设计是微机原理与接口技术课程的配套内容。微型计算机在很多场合作为一个控制系统的控制部件或作为一个设备的智能化部件融入系统中。学习和掌握计算机汇编语言和常用接口电路的应用和设计技术。充分认识理论知识对应技术的指导作用,进一步加强理论知识与实践相结合,加深对专业知识和理论知识的认识和理解。对于自动化专业的学会了解和认识微机的硬件结构和输入输出接口技术是十分必要的。本课程设计要求同学们自己按要求设计一段程序并完成简单的红绿灯程序制作以及相应的拓展。 二、设计的题目及要求 2.1、题目(一) 2.1.1设计目的 熟练掌握8088汇编语言程序各种结构的设计及编程方法,熟练掌握DOS中断功能调用的方法。 2.1.2内容 编制一个完整的程序,计算100个正整数(字数据)之和,如果不超过机器数的范围(65535),则计算其平均值并存于(RUSULT)中,否则显示“overflow”。 2.2、题目(二) 2.2.1设计目的 掌握8088CPU及存储器硬件接口电路的设计连接,掌握相关硬件驱动软件设计及信息处理软件的设计调试方法。 2.2.2内容 利用8088CPU以及8255设计十字路口交通灯控制系统。基本要求是完成双向红灯黄灯的配合控制。并对当前的红绿灯系统的不足加以思考,并给出相应的解决方法。

实验六---8255并行输入输出

实验六---8255并行输入输出

东南大学 《微机实验及课程设计》 实验报告 实验六 8255并行输入输出

姓名:学号: 专业:测控技术与仪器实验室: 516 同组人员:评定成绩: 一、实验目的 1)掌握8255方式0的工作原理及使用方法,利用直接输入输出进行控制显示; 2)掌握8段数码管的动态刷新显示控制; 二、(1)实验内容(必做) 6-1、8段数码管静态显示:编程从键盘输入一位十进制数字(0~9),在数码管上显示出来。 6-2、8段数码管动态显示:在两个数码管上同时显示不同的两位数字或字母,保持不变直至退出。(如56或7f) (2)实验内容(必做一题,选做一题) 6-3 静态显示:用逻辑电平开关预置某个数字(0~9)的ASCII码,将该数据用8255的C口读入,并用A口输出,并在数码管显示出来;如果预置的ASCII 码不是数字(0~9),数码管显示E字母。 6-4 动态显示:在两个数码管上滚动循环显示不同的0~f字符。(即开始时两个数码管显示01,12,23,34 ··f0,一直循环直至退出) 三、实验原理 (1)实验预备知识

图 八段式LED 数码管的符号和引脚 (2) 6-1流程图:

N Y 将对应段码输 结 6-1源代码: data segment ioport equ 0ec00h-0280h io8255a equ ioport+288h ;8255A口地址 io8255b equ ioport+28bh ;8255控制寄存器端口地址 led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh ;段码mesg1 db 0dh,0ah,'Input a num (0--9h):',0dh,0ah,'$';提示data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax mov dx,io8255b ;使8255的A口为输出方式 mov ax,80h

8255试验报告(方式1查询输出)

《微型计算机接口技术》实验报告 实验名称:可编程并行接口芯片8255应用 (8255方式1、查询输出) 姓名 学号: 班级: 日期: 广东外语外贸大学信息科学技术学院

一、实验目的 掌握8255方式1查询输入、输出时的使用及编程 二、实验内容 1、按照图示连接硬件(注意图中大多数线试验箱已经连好,只连接需要用户连接的部分,预习,参考PPT) 2、编程:每按一次单脉冲按钮,ACK信号有效,8255内部输出准备好状态有效(INTR),查询输出一次数据,点亮、熄灭相应的发光二极管。 三、实验原理(8255方式1输出:结合结构图、时序图、状态字描述) 8255是一片可编程并行I/O接口芯片,每片8255有两个8位的并行口(PA,PB)和两个4位并行口(PC的高、低四位),其中PA口可工作于方式0,1,2。PB口工作于方式0,1。PC口仅能工作于方式0。在方式1中,将8255的三个端口分为了A、B两组,PA、PB两个口仍作为数据输入/输出口,而PC口则作为两部分,分别作为PA、PB口的联络信号。8255A 方式1 A口输出过程由CPU响应中断开始,在中断中用OUT指令通过8255A 向外设输出数据,发出WR 信号;WR上升沿清除INTRA 中断请求信号,且使OBFA =“L”(有效),通知外设取数;当外设接受数据后,发出ACKA 应答信号,一方面使OBFA=“H”(无效),另一方面在ACKA信号的上升沿使INTRA=“H”(有效),以此向CPU发出新的中断请求,开始下一轮输出。 四、硬件设计及方案论证(完整图的信号线连接及作用:数据、地址、控制及外设线)硬件设计如图,其中: 1.8255芯片中的数据总线D0—D7是和CPU的数据线直接相连的,从而CPU可以向8255 发送命令、数据和8255芯片也可以向CPU发送状态、数据等等。 2.8255芯片中的A0和A1也是与CPU的地址总线直接相连,并且在控制字在以下几种 情况有不同的设置,若A1A0= 00时,8255芯片中的PA口被选中,若A1A0=01时,8255芯片中的PB口被选中,若A1A0=10时,8255芯片中的PC口被选中,若A1A0=11时,则8255芯片的控制口被选中。 3.8255芯片的读信号、写信号、复位信号,分别于CPU的IOR、IOW、RESET直接相 连,当CPU执行IN指令时,8255的读信号有效,CPU从8255芯片读取信息,当CPU 执行OUT指令时,8255的写信号有效,CPU输出信息到8255芯片,完成一定的功能。 而当CPU发出复位的信号时,8255也会进行复位操作。 4.8255芯片中的片选信号与3—8译码器的Y1相连,而Y1的寻址范围是288H—28FH, 而8255芯片中的端口A的地址是288H,端口B的地址是289H,端口C的地址是28AH,控制端口的地址是28BH,因此4的端口都在在3—8译码器的Y1的寻址范围之内。5.8255芯片的PC6与脉冲信号是连接在一起,8255芯片的A端口与二极管L7—L0直接 相连。当脉冲信号到来,PC6会被置1,允许中断,CPU会将数据通过8255芯片的A 口输出到二极管L7中,点亮相应的灯。 。。。。。。等等详细论证,如我课堂所讲

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) CS-8255插孔连译码输出Y7插孔。 (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

三、实验框图 四、实验程序 CODE SEGMENT ASSUME CS:CODE IOCONPT EQU 0FF2BH IOAPT EQU 0FF28H IOBPT EQU 0FF29H IOCPT EQU 0FF2AH ORG 10e0H START:MOV DX,IOCONPT MOV AL,80H

红绿灯实验报告

红绿灯实验报告 上海交通大学材料科学与工程学院 实验目的: 通过Labview程序设计做出十字路口红绿灯的计算机模拟。 程序原理: 整体思路: 用户将纵向红灯时间t纵红、纵向黄灯时间t纵黄、纵向绿灯时间t纵绿输入完毕后,程序会将这三段时间相加作为一个循环的时长T,并把时间计数器的时间除以1000取整数部分,再用这个结果除以T取余数得到当前循环已进行的时间t,取整数得到已进行的循环次数n。为了简便起见,程序默认t横黄等于t纵黄。根据实际经验可知: 机动车道部分: t纵红= t横黄+ t横绿 t横红= t纵黄+ t纵绿 人行道部分: t纵红= t横绿= 机动车道部分t纵红 t横红= t纵绿= 机动车道部分t横红 因此,我们可以采用判断时间区间的办法控制各个指示灯的亮灭,即:令纵向红灯时间区间为[ 0,t 纵红 ]、纵向黄灯时间区间为[ t纵红 + t纵绿,T ]、纵向绿灯时间区间为[ t纵红,t纵红 + t纵绿 ]、横向红灯时间区间为[ t纵红,T ]、横向黄灯时间区间为[ t横绿,t纵红 ]、横向绿灯时间区间为[ 0,t横绿 ],利用判定范围元件判断t所符合的区间。当t符合某些红灯或绿灯的区间时,指定元件将布尔量直接输出到信号灯,从而点亮这些红灯或绿灯并保持其他红灯或绿灯不工作;当t符合黄灯的区间时,利用相应元件得到黄灯已工作的时间,并将其除以2取余数,判断余数是否等于0,将布尔量输入信号灯,达到让黄灯闪烁的目的。 显然,各对指示灯时间区间均不相同,但是同一方向上三种颜色的指示灯的时间区间相加正好可以构成一个完整的循环,所以某一确定方向上有且仅有一种颜色的交通灯在工作。另外,本程序通过控制时间区间,完美地实现了不同方向上指示灯的协同工作,很好地模拟了实际情况。 另外,程序利用while循环以及移位寄存器实现连续运行。根据时间计数器的性质,每计时1000毫秒就会自动停止一次,所以本程序的设计中,每次循环里时间计数器只运行1000毫秒,通过不停地循环实现程序的连续运行。将移位寄存器赋以初始值1,而开始计时的时候n = 0。当二者不相等时,利用元件把此时移位寄存器的数值再次寄存并继续循环;当二者相等后,利用元件把移位寄存器此时的数值加1后寄存并继续循环,则二者又不相等了,元件就会把此时移位寄存器的数值再次寄存并继续循环。依此类推,则程序就会连续运行下去,不会终止。 程序设计方案: 当前循环已进行的时间t和已进行的循环次数n的获取: 加入一个时间计数器。由于时间单位是毫秒,而用户输入的时间单位是秒,因此需要转换单位:把计数的时间用“商与余数”元件除以1000取整数部分,即可将毫秒转化为秒。记此结果为t0,然后把t纵红、t纵黄和t纵绿用复合运算元件相加得到T,再用“商与余数”元件将t0除以T取余数即可得到当前循环已进行的时间t,取整数即为已进行的循环次数n。 机动车道指示灯部分:

相关文档
相关文档 最新文档