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

亲,该文档总共43页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

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

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

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

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

会计学7.1系统扩展、接口概述7.1系统扩展、接口概述7.1扩展三总线的产生7.1扩展三总线的产生7.2MCS-51内部并行I/O端口1.P0口的结构1)P0口作为普通I/O口驱动场效应管T2栅极接通。故内部总线与P0口同相。由于输出驱动级是漏极开路电路,若驱动NMOS或其 它拉流负载时,需要外接上拉电阻。P0的输出级可驱动8个LSTTL负载。②输入时----分读引脚或读锁存器 读引脚:由传送指令(MOV)实现; 下面一个缓冲器用于读端口引脚数据,当执行一条由端口输入的指令时,读脉冲把该三态缓冲器打开,这样端口引脚上的数据经过缓冲器读入到内部总线。②输入时----分读引脚或读锁存器 读锁存器:有些指令如:ANLP0,A称为“读-改-写” 指令,需要读锁存器。 上面一个缓冲器用于读端口锁存器数据。**原因:如果此时该端口的负载恰是一个晶体管基极,且原端口输出值为1,那么导通了的PN结会把端口引脚高电平拉低;若此时直接读端口引脚信号,将会把原输出的“1”电平误读为“0”电平。现采用读输出锁存器代替读引脚,图中,上面的三态缓冲器就为读锁存器Q端信号而设,读输出锁存器可避免上述可能发生的错误。**P0口必须接上拉电阻; 三态输入缓冲器的作用: 准双向口: 从图中可以看出,在读入端口数据时,由于输出驱动FET并接在引脚上,如果T2导通,就会将输入的高电平拉成低电平,产生误读。所以在端口进行输入操作前,应先向端口锁存器写“1”,使T2截止,引脚处于悬浮状态,变为高阻抗输入。这就是所谓的准双向口。2)P0作为地址/数据总线CPU发出控制电平“1”,打开“与”门,又使多路开关MUX把CPU的地址/数据总线与T2栅极反相接通,输出地址或数据。由图上可以看出,上下两个FET处于反相,构成了推拉式的输出电路,其负载能力大大增强。 P0引脚输出地址/输入数据 输入信号是从引脚通过输入缓冲器进入内部总线。 此时,CPU自动使MUX向下,并向P0口写“1”,“读引脚”控制信号有效,下面的缓冲器打开,外部数据读入内部总线。2、P2的内部结构2.P2口作为地址总线 在系统扩展片外程序存储器扩展数据存储器且容量超过256B(用MOVX@DPTR指令)时,CPU发出控制电平“1”,使多路开关MUX倒内部地址线。此时,P2输出高8位地址。3.P1口、P3口的内部结构②P3的内部结构②P3的内部结构P3第二功能各引脚功能定义: P3.0:RXD串行口输入 P3.1:TXD串行口输出 P3.2:INT0外部中断0输入 P3.3:INT1外部中断1输入 P3.4:T0定时器0外部输入 P3.5:T1定时器1外部输入 P3.6:WR外部写控制 P3.7:RD外部读控制综上所述:当P0作为I/O口使用时,特别是作为输出时,输出级属于开漏电路,必须外接上拉电阻才会有高电平输出;如果作为输入,必须先向相应的锁存器写“1”,才不会影响输入电平。 当CPU内部控制信号为“1”时,P0口作为地址/数据总线使用,这时,P0口就无法再作为I/O口使用了。P1、P2和P3口为准双向口,在内部差别不大,但使用功能有所不同。 P1口是用户专用8位准双向I/O口,具有通用输入/输出功能,每一位都能独立地设定为输入或输出。当有输出方式变为输入方式时,该位的锁存器必须写入“1”,然后才能进入输入操作。 P2口是8位准双向I/O口。外接I/O设备时,可作为扩展系统的地址总线,输出高8位地址,与P0口一起组成16位地址总线。对于8031而言,P2口一般只作为地址总线使用,而不作为I/O线直接与外部设备相连。 I/O口的直接输入输出:即P0、P1、P2、P3作为输入输出口使用(见P244,例7.1) 4.简单并行I/O口的扩展7.4简单并行I/O口的扩展扩展的输入输出口地址均为: P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0 ⅹⅹⅹⅹⅹⅹⅹ0ⅹⅹⅹⅹⅹⅹⅹⅹ 除了P2.0以外均取1,则扩展的输入输出口地址写成 16进制数均为: FEFFH 上面电路的功能是:按下某键,对应的LED发光。 其程序为: MOVDPTR,#0FEFFH LP:MOVXA,@DPTR MOVX@DPTR,A SJMPLP 7.4扩展8155可编程外围并行接口芯片7.4.18155的结构与引脚7.4.28155的RAM和I/O口地址 其地址按片外RAM统一编址(16位)。CE、IO/M接单片机的高8位地址。 一、I/O口(即片内寄存器)地址 CE=0、IO/M=1,低3位选择寄存器二、256BRAM的地址 CE=0、IO/M=0,由高8位地址控制;低8位选择RAM的256个存储单元。 7.4.38155的寄存器(6个)一、命令寄存器地址:****