当前位置:文档之家› 接口实验报告

接口实验报告

接口与通讯实验报告实验一可编程定时计数器8253一、实验目的掌握8253的基本工作原理和编程方法。

二、实验内容按图16虚线连接电路,将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

三、编程提示8253控制寄存器地址283H计数器0地址280H计数器1地址281HCLK0连接时钟1MHZ四·实验原理图五、实验流程图六实验代码及注释ioport equ 0ff00h-0280h;定义宏io8253a equ ioport+283hio8253b equ ioport+280hcode segmentassume cs:codestart :mov al,10hmov dx,io8253a;输入端口地址out dx,al;延时mov dx,io8253bmov al,0fh;初始化out dx,al;延时l: in al,dxcall disp;调用子程序push dx;入栈mov ah,06hmov dl,0ffhint 21hpop dx;出栈jz l;转lmov ah,4ch;已完,退出int 21hdisp proc near;定义范围为段内push dxand al,0fh;初始化almov dl,alcmp dl,9;比较jle numadd dl,7num : add dl,30hmov ah,02hint 21hmov dl,0dhint 21hmov dl,0ahint 21hpop dxretdisp endpcode endsend start七.实验报告1.8255简介8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。

具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。

其各口功能可由软件选择,使用灵活,通用性强。

8255可作为单片机与多种外设连接时的中间接口电路。

8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。

同时必须具有与外设连接的接口A、B、C口。

由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。

2.8255外部特性及引脚功能RESET:复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。

CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输.RD:读信号线,当这个输入引脚为低跳变沿时,即/RD产生一个低脉冲且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。

WR:写入信号,当这个输入引脚为低跳变沿时,即/WR产生一个低脉冲且/CS=0时,允许CPU将数据或控制字写入8255。

D0~D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。

PA0~PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。

PB0~PB7:端口B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。

PC0~PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。

端口C可以通过工作方式设定而分成2个4位的端口,每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。

A1,A0:地址选择线,用来选择8255的PA口,PB口,PC口和控制寄存器.当A1=0,A0=0时,PA口被选择;当A1=0,A0=1时,PB口被选择;当A1=1,A0=0时,PC口被选择;当A1=1.A0=1时,控制寄存器被选择3.三种工作方式8255具有3个相互独立的输入/输出通道端口,用+5V单电源供电,能在以下三种方式下工作。

方式0————基本输入输出方式;方式1————选通输入/出方式;方式2————双向选通输入/输出方式;对应的引脚工作方式:PA0~PA7:工作于三种方式中的任何一种;PB0~PB7:不能工作于方式二;PC0~PC7:不能工作于方式一或二;本次实验用到的是0方式,故在此着重了解0方式0方式——基本输入/输出方式,特点为:8255一次初始化只能把某个并行端口置成输入或输出,即单向输入/输出;不要求固定的联络(应答)信号,无固定的工作时序和固定的工作状态字;适用于无条件或查询方式与CPU交换数据,不能采用中断方式交换数据。

因此0方式使用起来不受什么限制。

功能:A端口做数据端口(8位并行);B端口做数据端口(8位并行);C端口做数据端口(4位并行,分高四位和低四位),或作位控,按位输出逻辑1或0。

实验二可编程并行接口(8255方式)一实验说明一、实验目的掌握8255方式0的工作原理及使用方法。

二、实验内容1.实验电路如图20,8255C口接逻辑电平开关K0~K7,A口接LED显示电路L0~L7。

2. 编程从8255C口输入数据,再从A口输出.三、编程提示1、8255控制寄存器端口地址28BHA口的地址288HC口的地址28AH2、参考流程图(见图21):二实验原理图三实验流程图实验代码及注释ioport equ 0ff00h-0280hio8255a equ ioport+288h;设置端口a地址为288h io8255b equ ioport+28bh;设置端口b地址为28bh io8255c equ ioport+28ah;设置端口c地址为28ah code segmentassume cs:codestart:mov dx,io8255b;设置输出端口,并且输出信息mov al,89hout dx,al;负脉冲宽度延时inout:mov dx,io8255c;设置输入端口in al,dx;查BUSY是否为0mov dx,io8255aout dx,almov dl,0ffhmov ah,06hint 21hjz inout;跳转mov ah,4ch;已完,退出int 21hcode endsend start四、实验报告1.8253简介8253内部有三个计数器,分别称为计数器0、计数器1和计数器2,他们的机构完全相同。

每个计数器的输入和输出都决定于设置在控制寄存器中的控制字,互相之间工作完全独立。

每个计数器通过三个引脚和外部联系,一个为时钟输入端CLK,一个为门控信号输入端GATE,另一个为输出端OUT。

每个计数器内部有一个8位的控制寄存器,还有一个16位的计数初值寄存器CR、一个计数执行部件CE和一个输出锁存器OL。

执行部件实际上是一个16位的减法计数器,它的起始值就是初值寄存器的值,而初始值寄存器的值是通过程序设置的。

输出锁存器的值是通过程序设置的。

输出锁存器OL用来锁存计数执行部件CE的内容,从而使CPU可以对此进行读操作。

CR、CE和OL都是16位寄存器,但是也可以作8位寄存器来用2.8253外部特性及引脚功能8253分为两类连接信号线(1)面向CPU的信号线数据线D0-D7,地址线,CS(片选信号),A0,A1(片内端口地址),读/写线,RD(I/O 读信号),WR(I/O写信号)。

(2)面向I/O设备的信号线时钟脉冲信号CLK0-CLK2(输入),用作计数脉冲;门控信号GATE0~GATE2(输入),用于定时/计数的启动/停止、允许/禁止。

输出信号OUT0-OUT2(输出),用于实现对I/O设备的定时/技术操作。

3.8253的命令字8253的三个命令字是:方式命令,锁存命令和读回命令。

其中方式命令是在本片使用时必须要使用的,其他两个命令则根据需要使用。

需要注意的是,这三个命令同用一个端口,按方式命令在先,其他命令在后的顺序写入命令端口。

(1)方式命令其作用是初始化8253,8253开始工作之前都要用方式命令字对其进行初始化设置。

工作命令方式格式如下:8位命令字分为4个字段,计数器选择字段(D7D6),读写指示选择字段(D5D4),工作方式选择字段(D3D2D1),数码制选择字段(D0)(2)锁存命令锁存命令是将当前计数值锁存到暂存寄存器,为了读出被锁存的内容还要发一条命令从暂存寄存器中读取。

8位命令字分为两个字段:计数器选择字段(D7,D6),锁存命令特征值(D5,D4)(3)读回命令与前面的锁存命令不同,它既能锁存计数值又能锁存状态信息,而且一条读回命令可以锁存3个计数器的当前数值和状态,格式如下:其中D1D2D3分别用于选择三个计数器,写1表示选中,写0反之;D4D5分别用于选择是读取当前状态还是读取当前计数值,写0表示要读取,写1表示不读取。

与执行锁存命令一样,执行读回命令只是把计数器的当前值与状态信息锁存到暂存寄存器,为了读出被锁存的内容,还要发一条读命令从暂存寄存器中读取。

4.8253的工作方式8253有六种工作方式,本实验用道的是0方式,故在此主要介绍0方式。

0方式功能:0方式做事件计数器,计数器的大小就是计数初值。

其特点是计数结束,输出端OUT产生0->1的上升沿。

计数结束自动停止,不需外加停止信号。

0方式的基本波形是:当写入计数初值后,启动计数器开始计数,OUT信号变为低电平,并维持低电平到减法计数器的内容到0为止时,停止工作,OUT信号变为高电平,并维持高电平到再次写入新的计数值。

5.8253的初始化1.设置命令方式字选择某一计数器,首先要向该计数器写入命令方式字,以确定该计数/定时器的工作方式。

2.设置计数初值按照方式命令字中RW1RW0字段的规定写入计数初始值,程序举例:MOV DX,307H ;命令口MOV AL,10110110B ;2号计数器的方式命令字OUT DX,ALMOV DX,306H ;2号计数器数据口MOV AX,533H ;计数初值OUT DX,AL ;送低字节到2号数据口MOV AL,AHOUT DX,AL ;送低字节到2号数据口实验三模数转换器一、实验目的了解模/数转换的基本原理,掌握ADC0809的使用方法。

二、实验内容1、实验电路原理图如图38。

通过实验台左下角电位器RW1输出0~5V直流电压送入ADC0809通道0(IN0),利用debug的输出命令启动A/D转换器,输入命令读取转换结果,验证输入电压与转换后数字的关系。

启动IN0开始转换: Out 0298 0读取转换结果: In 02982、编程采集IN0输入的电压,在屏幕上显示出转换后的数据(用16进制数)。

相关主题