第七章 单片机简单I-O口扩展
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
51单片机有 单片机有4 单片机有 组并口P0-P3, 组并口 , 为什么还要扩展 I/O口? 口
扩展I/O口与外部RAM统一编址 扩展I/O口与外部RAM统一编址 I/O口与外部RAM 使用同样的指令MOVX访问——控制总线RD/WR MOVX访问 控制总线RD/WR 使用同样的指令MOVX访问 控制总线
FFFFH
地址分配
I/O口 口 64K片外 片外RAM 片外 RAM 0000H
应用编程
应用程序设计 若要实现“按下任意键,对应的 发光” 程序: 若要实现“按下任意键,对应的LED发光”,程序: 发光
LOOP:MOV : DPTR,#0FEFFH ;指向口地址 , ; 从74LS244读入数据 读入数据 输出数据, ;向74LS273输出数据,驱动 输出数据 驱动LED MOVX A,@DPTR , MOVX @DPTR,A , SJMP LOOP
仿真界面
仿真界面
仿真结果
发光” “按下任意键,对应的LED发光” 按下任意键,对应的 发光
AT89C51
仿真结果
发光” “按下任意键,对应的LED发光” 按下任意键,对应的 发光
百度文库
以上扩展了两个I/O口 口仍可使用, 以上扩展了两个 口,P1口仍可使用,使I/O口的数量增加 口仍可使用 口的数量增加 了。 还可以通过总线扩展其它应用的I/O 口,都挂在总线口上,用 都挂在总线口上, 还可以通过总线扩展其它应用的 不同的端口地址访问。 不同的端口地址访问。 如果把P2.7接74LS244,P2.6接74LS273,那么扩展的输入、 接 如果把 , 接 ,那么扩展的输入、 输出口的地址是多少,程序如何修改? 输出口的地址是多少,程序如何修改?
第 章 单 片 机 系 统 扩 展
Single Chip Microcomputer 本章内容
程序存储器ROM的扩展 数据存储器RAM的扩展 并行I/O口的扩展
7.4
并行I/O口的扩展
51单片机4个并行I/O口的使用 51单片机4个并行I/O口的使用 单片机 I/O P0口分时地作低 位地址和8 口分时地作低8 P0口分时地作低8位地址和8位数据线 P2口作高 口作高8 P2口作高8位地址线 P3口部分作控制线 口部分作控制线, P3口部分作控制线,部分第二功能 只有P1口完全给用户使用, P1口完全给用户使用 只有P1口完全给用户使用,不够时必须外部扩展 并行I/O口的扩展有 并行I/O口的扩展有: I/O口的扩展 简单并行I/O口的扩展 简单并行I/O口的扩展 I/O 可编程I/O I/O口芯片扩展 可编程I/O口芯片扩展 利用串行口扩展并行口
简单I/O口扩展 简单I/O口扩展 I/O
用并行口扩展I/O口 用并行口扩展 口
仅用锁存器和缓冲器扩展I/O口的方法,称为简单I/O口的扩 仅用锁存器和缓冲器扩展 口的方法,称为简单 口的扩 口的方法 展。 选择TTL电路或 电路或MOS电路即能组成简单的 口扩展 。 不需 电路即能组成简单的I/O口扩展 口扩展。 选择 电路或 电路即能组成简单的 要初始化设置,只有一个端口地址, 要初始化设置,只有一个端口地址,用选通操作 位三态缓冲器74LS244可扩展输入口; 可扩展输入口; 如:用8位三态缓冲器 位三态缓冲器 可扩展输入口 锁存器74LS273、74LS373、74LS377等可组成输出口 等可组成输出口。 用8D锁存器 锁存器 、 、 等可组成输出口 总线型I/O扩展 总线型 扩展 数据通过P0口输入 输出 三态缓冲器输入, 数据通过 口输入/输出 , 三态缓冲器输入 , 不影响总 口输入 输出, 线上的数据;数据锁存器输出,能保持输出数据稳定。 线上的数据;数据锁存器输出,能保持输出数据稳定。
简单I/O扩展接口 简单 扩展接口
扩展电路说明
74LS244为三态缓冲器,扩展输入口,外接8个开关,将开 为三态缓冲器,扩展输入口,外接 个开关 个开关, 为三态缓冲器 关信号通过总线P0输入到 输入到CPU,读有效和 有效时输入。 关信号通过总线 输入到 ,读有效和P2.0有效时输入。 有效时输入 74LS273为8D锁存器,扩展输出口,外接 个LED灯,将 为 锁存器 扩展输出口,外接8个 锁存器, 灯 CPU中的数据通过 口送出控制 个灯,在写和 中的数据通过P0口送出控制 个灯, 中的数据通过 口送出控制8个灯 在写和P2.0有效时输 有效时输 出。 锁存器:74LS273为上升沿锁存,低电平时数据直通 为上升沿锁存, 锁存器: 为上升沿锁存 低电平时数据直通Q=D。 。 锁存器将输出电路与总线隔离。 锁存器将输出电路与总线隔离。 读时: 控制信号/G1、/G2由P2.0和读信号 和读信号/RD相或 读时:74LS244控制信号 控制信号 、 由 和读信号 相或 后控制,都为0时输入有效 选通74LS244。 时输入有效, 后控制,都为 时输入有效,选通 。 写时:74LS273控制信号 控制信号CLK由P2.0和写信号 和写信号/WR相或后控 写时 控制信号 由 和写信号 相或后控 都为0时输出有效 选通74LS273。 时输出有效, 制,都为 时输出有效,选通 。 两个芯片的地址虽然相同,但可以通过读写操作来区别 两个芯片的地址虽然相同 但可以通过读写操作来区别
端口地址的确定
单片机没有设置独立的I/O口地址空间,扩展I/O I/O口地址空间 I/O口与 51 单片机没有设置独立的I/O口地址空间,扩展I/O口与 外部RAM统一编址。I/O口当外部RAM单元对待 RAM统一编址 口当外部RAM单元对待, 外部RAM统一编址。I/O口当外部RAM单元对待,用相同的指令 MOVX访问 自动产生控制信号---- /RD、 /WR。 访问, ----读 MOVX访问,自动产生控制信号----读/RD、写/WR。 74LS273和74LS244都是在 和 都是在P2.0为0时被选通,与其他地址位 时被选通, 都是在 为 时被选通 无关,一般将未用地址设为1,所以二者地址都为FEFFH。 无关,一般将未用地址设为 , 在系统地址空间分配上,外部RAM与外部 口统一都在一 与外部I/O口统一都在一 在系统地址空间分配上,外部 与外部 空间中, 占低地址, 口占高地址 个64K RAM空间中,一般 空间中 一般RAM占低地址,I/O口占高地址 占低地址