1 / 34

单片机系统扩展

单片机系统扩展. 扩展使用的三总线. 地址总线: P0 -低 8 位 P2 -高 8 位 数据总线: P0 控制总线 : RD 、 WR 、 ALE 、 PSEN ( 读、 写、 地址锁存允许、 外部 ROM 读选通 ). 程序存储器的扩展. 在 8051 单片机外部扩展 8K 字节程序存储器 2764 的连接图. 数据存储器扩展. 在 8051 单片机外部扩展一片 8K 字节数据存储器 6264 的连接图. 系统扩展选址方法. 1 、线选法:

Download Presentation

单片机系统扩展

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 单片机系统扩展

  2. 扩展使用的三总线 地址总线:P0-低8位 P2-高8位 数据总线:P0 控制总线:RD、WR、 ALE、 PSEN ( 读、 写、 地址锁存允许、 外部ROM读选通)

  3. 程序存储器的扩展 在8051单片机外部扩展8K字节程序存储器2764的连接图

  4. 数据存储器扩展 在8051单片机外部扩展一片8K字节数据存储器6264的连接图

  5. 系统扩展选址方法 1、线选法: 利用单片机的一根空闲高位地址线(通常采用P2的某根口线)选中一个外部扩展I/O端口芯片,若要选中某个芯片工作,将对应芯片的片选信号端设为低电平,其它未被选中芯片的片选信号端设为高电平,从而保证只选中指定的芯片工作。 优点:不需要地址译码器,可以节省器件,减小 体积,降低成本 缺点:可寻址的器件数目受到很大限制,而且地 址空间不连续,这些都会给系统设计带来 不便。

  6. 线选法进行外部扩展举例 6264的地址范围: 高8位地址变化范围 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 1 1 0 × × × × × 低8位地址变化范围:P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 × × × × × × × × 由此可得6264的地址范围为:C000H~DFFFH。

  7. 8255的地址范围: 高8位地址变化范围 :P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 1 0 1 1 1 1 1 1 低8位地址变化范围:P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 1 1 1 1 1 1 × × 由此可得8255的地址范围为:BFFCH~BFFFH。 0832的地址: 高8位地址变化范围: P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 0 1 1 1 1 1 1 1 低8位地址变化范围: P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 1 1 1 1 1 1 1 1 由此可得0832的地址为:7FFFH。

  8. 2、地址译码法 对于容量较大的存储器或I/O端口较多的单片机应用系统进行外部扩展,当芯片所需要的片选信号多于可利用的高位地址线时,就需要采用地址译码法。地址译码法必须采用地址译码器,常用的地址译码器有3-8译码器74LS138、双2-4译码器74LS139等。

  9. 地址译码进行外部扩展举例

  10. 并行I/O端口扩展芯片一. 8255可编程并行I/O接口扩展芯片二. 8155可编程并行I/O接口扩展芯片

  11. 8255可编程并行I/O接口扩展芯片 (1)8255内部结构及引脚功能

  12. (2)端口 PA0~PA7、PB0~PB7、PC0~PC7共24条端口线。3个口皆为锁存/缓冲寄存器,A口、B口有锁存功能,C口无锁存功能。A、B、C 3口的工作方式由程序设置。 (3)数据线 8255是8位芯片,有8位数据线D0~D7。 数据线接于8051单片机的P0接口,

  13. (3)控制线 控制线控制8255的读RD:、写WR、复位RESET 及片选CS等。 (4)地址线 • A1 A0 选择口 • 0 0 A口 • 0 1 B口 • 1 0 C口 • 1 1 控制口

  14. 8255方式选择及方式控制字 方式选择控制字

  15. 8255接口扩展举例 (1)8255与单片机连接图

  16. (2) 8255初始化 对8255的3个端口的工作方式预先设定。设置控制字经控制口写入。 例如,若要求8255PA口按方式1输入,PB口按方式0输出,PC口高4位按方式1输入,PC口低4位安方式0输出,则只要作如下初始化编程: MOV DPTR, #7FFFH ;8255控制口地址 MOV A, #0B8H ;满足以上要求的控制字 MOVX @DPTR, A ;控制字送入8255控制口

  17. 8155可编程并行I/O接口扩展芯片 (1)8155内部结构及引脚功能

  18. (2)8155的控制字格式

  19. (3)8155的状态字格式

  20. (4)8155的定时器使用 8155片内可编程定时/计数器由两个8位寄存器组成,低8位和高6位存放计数初值,最高2位控制定时器的工作方式

  21. (5)8155的端口地址分配

  22. 8155接口扩展举例 (1)8255与单片机连接图

  23. 8155的端口地址编码为: 命令/状态寄存器地址:7F00H, 片内RAM字节地址: 7E00H~7EFFH, PA口地址: 7F01H, PB口地址: 7F02H, PC口地址: 7F03H, 定时计数器低位地址: 7F04H, 定时计数器高位地址: 7F05H。

  24. (2) 8155初始化 若要求8155的PA、PB作为基本输出口,PC作为基本输入口,不允许中断,不启动定时计数器,则命令字为03H,初始化编程下: MOV DPTR, #7F00H ;8155命令口地址 MOV A, #03H MOVX @DPTR, A ;写入命令字

  25. 利用I2C总线进行系统扩展 I2C总线是PHILIPS公司开发的一种简单、双向二线制同步串行总线, 它只需要两根线(串行时钟线和串行数据线)即可在连接于总线上的器件之间传送信息。 主要特性如下: • 总线只有两根线:串行时钟线和串行数据线; • 每个连到总线上的器件都可由软件以唯一的地址寻址,并建立简单的主/从关系, 主器件既可作为发送器, 也可作为接收器; • 它是一个真正的多主总线, 带有竞争检测和仲裁电路, 可使多主机任意同时发送而不破坏总线上的数据; • 同步时钟允许器件通过总线以不同的波特率进行通信; • 同步时钟可以作为停止和重新启动串行口发送的握手方式; • 连接到同一总线的集成电路数只受400PF的最大总线电容的限制。

  26. I2C总线的电气结构 I2C总线接口的电气结构如图所示, 组成I2C总线的串行数据线SDA和串行时钟线SCL 必须经过上拉电阻Rp接到正电源上, 连接到总线上的器件的输出级必须为“开漏”或“开集” 的形式,以便完成“线与”功能。SDA和SCL都为双向I/O口线, 总线空闲时皆为高电平。 总线上数据传送最高速率可达100Kbit/s。

  27. I2C总线可以构成多主数据传送系统, 但只有带CPU的器件可以成为主器件。 主器件发送时钟、启动位、数据工作方式, 从器件则接收时钟及数据工作方式。接收或发送则根据数据的传送方向决定。I2C总线上数据传送时的启动、结束和有效状态都由SDA、SCL的电平状态决定, 在I2C总线规程中启动和停止条件规定如下: • 启动条件: 在SCL为高电平时, SDA出现一个下降沿则启动I2C总线。 • 停止条件: 在SCL为高电平时, SDA出现一个上升沿则停止使用I2C总线。

  28. I2C总线的数据传输 在启动和停止条件之间可转送的数据不受限制,但每个字节必须为8位,先传送最高位, 在每个字节之后必须跟一个响应位。主器件收发每个字节后产生一个时钟应答脉冲, 在这期间, 发送器必须保证 SDA为高, 由接收器将SDA拉低, 称为应答信号(ACK)。主器件为接收器时, 在接收了最后一个字节之后不发应答信号, 也称为非应答信号(NOT ACK)。

  29. 总线中每个器件都有自己唯一确定的地址, 启动条件后主机发送的第一个字节就是被读写的从器件地址, 其中第8位为方向位, “0”(W)表示主器件发送,“1”(R)表示主器件接收。总线上每个器件在启动条件后都把自己的地址与前7位相比较, 如相同则器件被选中, 产生应答, 并根据读写位决定在数据传送中是接收还是发送。

  30. 在主发送方式下, 由主器件先发出启动信号(S), 接着 发从器件的7 位地址(SLA)和表明主器件发送的方向位“0”(W), 即这个字节为SLA+W。被寻址的从器件在收到这个字节后, 返回一个应答信号(A), 在确定主从握手应答正常后, 主器件向从器件发送字节数据, 从器件每收到一个字节数据后都要返回一个应答信号, 直到全部数据都发送完为止。在主接收方式下, 主器件先发出启动信号(S),接着发从器件的7位地址(SLA)和表明主器件接收的方向位“1”(R), 即这个字节为SLA+R。在发送完这个字节后, P1.6(SCL)继续输出时钟, 通过P1.7(SDA)接收从器件发来的串行数据。 主器件每接收到一个字节后都要发送一个应答信号(A)。当全部数据都发送或接收完毕后, 主器件应发出停止信号(P)。

  31. I2C总线是一种串行通信总线, 它与并行总线不同, 并行总线中有地址总线, CPU 可通过地址总线来选择所需要器件的地址。I2C总线只有一根数据线和一根时钟线, 没有专门的地址线, 而是利用数据传送中的头几个字节来传送地址信息。I2C总线的寻址方式有主器件的节点寻址和通用呼叫寻址两种, 具体实现方法是由主器件在发出启动位S 后紧接着发送从器件的7位地址码, 即S+SLA, 在节点地址寻址中SLA为被寻址的从节点地址, 当SLA为全“0”时, 即为通用呼叫地址。 通用呼叫地址用于寻址接到I2C总线上的每个器件的地址, 不需要从通用呼叫地址命令中获取数据的器件可以不响应通用呼叫地址。

  32. 单片机的节电工作方式 对于8051单片机来说,有待机方式和掉电保护方式两种低功耗方式。通过设置电源控制寄存器PCON的相关位可以确定当前的低功耗方式。PCON寄存器格式如下: 其中SMOD:波特率倍增位 GF0,GF1:通用标志位 PD:掉电方式位,PD=1为掉电方式 IDL:待机方式位,IDL=1为待机方式

  33. (1).待机方式 将PCON寄存器的IDL位置“1”,单片机则进入待机方式。通常在待机方式下,单片机的中断仍然可以使用,这样可以通过中断触发方式退出待机模式。 (2). 掉电保护方式 将PCON寄存器的PD位置“1”,单片机则进入掉电保护方式。如果单片机检测到电源电压过低,此时除进行信息保护外,还需将PD位被置“1”,使单片机进入掉电保护方式。

  34. 节电工作方式应用 如图所示,当交流供电正常时, CPU以断续方式采样测量数据。发生停电时, 依靠备用电池向8051单片机和外部RAM供电, 以维持外部RAM中的数据不发生丢失。用8051的P1.0来监测系统的供电是否正常, P1.0为低电平说明交流供电正常; P1.0为高电平则说明交流供电即将停电或已经停电。电阻R和电容C组成上电复位电路, 当交流电源恢复时, 电容C的充电过程向8051RST引脚提供一个复位脉冲,使单片机退出掉电方式。

More Related