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

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

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

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

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

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

89C51单片机最小系统三总线的概念: 地址总线——AB,P0口提供(A7~A0); P2口提供(A15~A8),共16位。 数据总线——DB,P0口提供(D7~D0),共8位。 控制总线——CB,ALE、、、、等。复习:存储器的扩展3、控制线的连接 对存储器来讲控制线无非是:芯片的选通控制、读写控制。 单片机与外部器件数据交换要遵循两个重要原则: 一是,地址唯一性,一个单元一个地址。 二是,同一时刻,CPU只能访问一个地址,即只能与一 个单元交换数据。 不交换时,外部器件处于锁闭状态,对总线呈浮空状态。读/写:CPU向外部设备发出的读/写控制命令。 EPROM:/OE/PSEN SRAM:/WE/WR /OE/RD 二、存储器地址编码 SRAM6116:“16”——2K×8b=2KB21×210=211 即6116有11根地址线。 地址空间:A10A9A8A7A6A5A4A3A2A1A0 最低地址:000000000000000H 最高地址:1111111111107FFH MCS-51单片机寻址范围:64KB26×210=216即16位地址线 地址空间:A15A14A13A12A11A10A9A8A7······A0单片机 ×××××A10A9A8A7······A06116上式中:“×”表示0或1。 即单片机地址空间中包含有32个2KB。某片6116占据的是哪2KB不能确定——地址浮动。23=8§8-3并口的扩展方法一、利用TTL、CMOS集成电路来扩展74LS377为8D锁存器,八入八出,一时钟CP,一锁存允许/E。 /E=0时,CP的上升沿,输入数据并锁存。2、用锁存器扩展简单的八位输入口在STB的下降沿,将数据锁存入74LS373 /E控制着74LS373的输出,由P2.6和/RD相或控制,所以,74LS373的口地址为BFFFH。中断服务程序: ORG0003H PINT0:AJMPINT0 ORG1000H INT0:MOVDPTR,#0BFFFH;指向74LS373扩展输入口 MOVXA,@DPTR;8031读入数据 MOV@R0,A;输入数据送数据区 INCR0 RETI3、用三态门扩展8位输入并行口二、用串行口扩展并行I/O接口74LS165是8位并入、串出移位寄存器。 其中,CP为移位脉冲输入端; S/L为移位/装入端,以P1.0控制。 两片74LS165的首尾相连,即QH与SIN相连。MOVR7,#20H;读入字节数组 MOVR0,#30H;内部RAM数据区首址 SETBF0;假定74LS165(1)先读入 RCV0:CLRP1.0;165装入数据 SETBP1.0;允许165串行移位 RCV1:MOVSCON,#00010000B;串行口设定 STP:JNBRI,STP;等待接收完一个八位数 CLRRI不胜数;清RI标志,以备下次接收 MOVA,SBUF;串口接收数据8951 P3.0 P3.1 P1.0上图接法中,由于移位寄存器无并行输出控制,在串行输入过程中,其输出状态会不断变化,故在某些使用场合下,在74LS164的输出端应加接输出三态门控制,以便保证串行输入结束后再输出并行数据。小结:为什么要扩展并行I/O口? 扩展并行I/O口常用的三种方法是什么? 用串口扩展时,串口应工作在方式几?§8-4可编程并行接口芯片8255A组成: P2.7 P0 8951 ALE /RD /WR RST /EA分三部分: 总线接口部分;内部逻辑部分;外设接口部分(3)外设接口部分 可由编程决定三个端口的功能 输入输出其它 A口8位锁存/缓冲8位锁存双向 B口8位锁存/缓冲8位缓冲 C口8位锁存/缓冲8位缓冲可分成两组分别作A 口、B口的选通联络线2、8255A的端口操作 A1A0选中 00PA口 01PB口 10PC口 1控制 寄存 器二、8255A的工作方式及方式选择 1、8255A的工作方式 (1)方式0——基本输入/输出方式 A口、B口、C口均有此方式,无选通, 是单片机与外部设备之间的直接数据通道。 (2)方式1——选通输入/输出方式 仅PA口、PB口有此方式, PC口中若干位作联络信号线,.各联络信号线的意义: /STB——输入选通信号,外设发来。 IBF——输入缓冲器满信号,发给外设(通知外 设数据未被取走,暂不能接收新数据) INTR——中断请求信号,外部设备发给单片机 INTE——中断允许信号 /OBF——输出缓冲器满信号,发给外设(单片机将数据已送 到指定口,外部设备可以取走) /ACK——外设响应信号,由外部设备发来(数据已送到外部 设备)(3)方式3——双向方式 仅PA口有此方式。PC3~PC7作联络线此时, PB口可以是方式0;也可以是方式1(PC0~ PC1作联络线)