ram扩展-MCS-51单片机系统功能的扩展 教育学习.ppt_第1页
ram扩展-MCS-51单片机系统功能的扩展 教育学习.ppt_第2页
ram扩展-MCS-51单片机系统功能的扩展 教育学习.ppt_第3页
ram扩展-MCS-51单片机系统功能的扩展 教育学习.ppt_第4页
ram扩展-MCS-51单片机系统功能的扩展 教育学习.ppt_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章MCS 51单片机系统功能的扩展 4 1系统扩展概述4 2常用扩展器件简介4 3存储器的扩展4 4I O扩展 1 优选内容 4 1系统扩展概述 4 1 1最小应用系统 a 8051 8751最小系统结构图 b 8031最小系统结构图 图4 1MCS 51单片机最小化系统 2 优选内容 4 1 2单片机系统扩展的内容与方法1 单片机的三总线结构 图4 2MCS 51单片机的三总线结构形式 3 优选内容 2 系统扩展的内容与方法 1 系统的扩展一般有以下几方面的内容 外部程序存储器的扩展 外部数据存储器的扩展 输入 输出接口的扩展 管理功能器件的扩展 如定时器 计数器 键盘 显示器 中断优先级编码器等 4 优选内容 2 系统扩展的基本方法 一般来讲 所有与计算机扩展连接芯片的外部引脚线都可以归属为三总线结构 扩展连接的一般方法实际上是三总线对接 要保证单片机和扩展芯片协调一致地工作 即要共同满足其工作时序 5 优选内容 4 2常用扩展器件简介 表4 1常用的扩展器件 6 优选内容 表4 1常用的扩展器件 7 优选内容 4 2 18D锁存器74LS373 图4 374LS373结构示意图 8 优选内容 图4 474LS373用作地址锁存器 9 优选内容 4 2 274LS244和74LS245芯片 图4 574LS244内部逻辑与引脚图 10 优选内容 图4 674LS245内部逻辑与引脚图 11 优选内容 图4 7总线驱动器的连接图 a P2外接74LS244 b P0外接74LS245 12 优选内容 4 2 33 8译码器74LS138 图4 874LS138引脚图 13 优选内容 表4 274LS138的译码逻辑关系 14 优选内容 4 3存储器的扩展 4 3 1存储器扩展概述1 MCS 51单片机的扩展能力根据MCS 51单片机总线宽度 16位 在片外可扩展的存储器最大容量为64KB 地址为0000H FFFFH 因为MCS 51单片机对片外程序存储器和数据存储器的操作使用不同的指令和控制信号 所以允许两者的地址空间重叠 故片外可扩展的程序存储器与数据存储器分别为64KB 为了配置外围设备而需要扩展的I O口与片外数据存储器统一编址 即占据相同的地址空间 因此 片外数据存储器连同I O口一起总的扩展容量是64KB 15 优选内容 2 扩展的一般方法存储器除按读写特性不同区分为程序存储器和数据存储器外 每种存储器还有不同的种类 程序存储器又可分为掩膜ROM 可编程ROM PROM 可擦除ROM EPROM或EEPROM 数据存储器又可分为静态RAM和动态RAM 因此 存储器芯片有多种 即使是同一种类的存储器芯片 容量的不同 其引脚数目也不同 尽管如此 存储器芯片与单片机扩展连接具有共同的规律 不论何种存储器芯片 其引脚都呈三总线结构 与单片机连接都是三总线对接 另外 电源线应接对应的电源线上 16 优选内容 17 优选内容 存储器芯片的地址线 地址线的数目由芯片的容量决定 容量 Q 与地址线数目 N 满足关系式 Q 2N 存储器芯片的地址线与单片机的地址总线 A0 A15 按由低位到高位的顺序顺次相接 一般来说 存储器芯片的地址线数目总是少于单片机地址总线的数目 如此相接后 单片机的高位地址线总有剩余 剩余地址线一般作为译码线 译码输出与存储器芯片的片选信号线相接 存储器芯片有一根或几根片选信号线 对存储器芯片访问时 片选信号必须有效 即选中存储器芯片 片选信号线与单片机系统的译码输出相接后 就决定了存储器芯片的地址范围 因此 单片机的剩余高位地址线的译码及译码输出与存储器芯片的片选信号线的连接 是存储器扩展连接的关键问题 18 优选内容 1 部分译码 所谓部分译码就是存储器芯片的地址线与单片机系统的地址线顺次相接后 剩余的高位地址线仅用一部分参加译码 参加译码的地址线对于选中某一存储器芯片有一个确定的状态 而与不参加译码的地址线无关 也可以说 只要参加译码的地址线处于对某一存储器芯片的选中状态 不参加译码的地址线的任意状态都可以选中该芯片 正因如此 部分译码使存储器芯片的地址空间有重叠 造成系统存储器空间的浪费 19 优选内容 图4 9地址译码关系图 20 优选内容 图4 9中与存储器芯片连接的低11位地址线的地址变化范围为全 0 全 1 参加译码的4根地址线的状态是唯一确定的 不参加译码的A15位地址线有两种状态都可以选中该存储器芯片 当A15 0时 占用的地址是0010000000000000 0010011111111111 即2000H 2FFFH 当A15 1时 占用的地址是1010000000000000 1010011111111111 即A000H AFFFH 同理 若有N条高位地址线不参加译码 则有2N个重叠的地址范围 重叠的地址范围中真正能存储信息的只有一个 其余仅是占据 因而会造成浪费 这是部分译码的缺点 它的优点是译码电路简单 21 优选内容 2 全译码 所谓全译码就是存储器芯片的地址线与单片机系统的地址线顺次相接后 剩余的高位地址线全部参加译码 这种译码方法存储器芯片的地址空间是唯一确定的 但译码电路相对复杂 这两种译码方法在单片机扩展系统中都有应用 在扩展存储器 包括I O口 容量不大的情况下 选择部分译码 译码电路简单 可降低成本 22 优选内容 3 扩展存储器所需芯片数目的确定若所选存储器芯片字长与单片机字长一致 则只需扩展容量 所需芯片数目按下式确定 若所选存储器芯片字长与单片机字长不一致 则不仅需扩展容量 还需字扩展 所需芯片数目按下式确定 23 优选内容 4 3 2程序存储器的扩展 1 EPROM芯片 图4 10常用EPROM芯片的引脚图 24 优选内容 2 程序存储器扩展举例 1 不用片外译码器的单片程序存储器的扩展例1试用EPROM2764构成8031的最小系统 2764是8K 8位程序存储器 芯片的地址引脚线有13条 顺次和单片机的地址线A0 A12相接 由于不采用地址译码器 所以高3位地址线A13 A14 A15不接 故有23 8个重叠的8KB地址空间 因只用一片2764 其片选信号CE可直接接地 常有效 其连接电路如图4 11所示 25 优选内容 图4 112764与8031的扩展连接图 26 优选内容 图4 11所示连接电路的8个重叠的地址范围为0000000000000000 0001111111111111 即0000H 1FFFH 0010000000000000 0011111111111111 即2000H 3FFFH 0100000000000000 0101111111111111 即4000H 5FFFH 0110000000000000 0111111111111111 即6000H 7FFFH 1000000000000000 1001111111111111 即8000H 9FFFH 1010000000000000 1011111111111111 即A000H BFFFH 1100000000000000 1101111111111111 即C000H DFFFH 1110000000000000 1111111111111111 即E000H FFFFH 27 优选内容 2 采用线选法的多片程序存储器的扩展 例2使用两片2764扩展16KB的程序存储器 采用线选法选中芯片 扩展连接图如图4 12所示 以P2 7作为片选 当P2 7 0时 选中2764 1 当P2 7 1时 选中2764 2 因两根线 A13 A14 未用 故两个芯片各有22 4个重叠的地址空间 它们分别为 28 优选内容 图4 12用两片2764EPROM的扩展连接图 29 优选内容 左片 00000000000000000 0001111111111111 即0000H 1FFFH 00100000000000000 0011111111111111 即2000H 3FFFH 01000000000000000 0101111111111111 即4000H 5FFFH 01100000000000000 0111111111111111 即6000H 7FFFH 右片 10000000000000000 1001111111111111 即8000H 9FFFH 10100000000000000 1011111111111111 即A000H BFFFH 11000000000000000 1101111111111111 即C000H DFFFH 11100000000000000 1111111111111111 即E000H FFFFH 30 优选内容 3 采用地址译码器的多片程序存储器的扩展例3要求用2764芯片扩展8031的片外程序存储器 分配的地址范围为0000H 3FFFH 本例要求的地址空间是唯一确定的 所以要采用全译码方法 由分配的地址范围知 扩展的容量为3FFFH 0000H 1 4000H 4KB 2764为8K 8位 故需要两片 第1片的地址范围应为0000H 1FFFH 第2片的地址范围应为2000H 3FFFH 由地址范围确定译码器的连接 为此画出译码关系图如下 31 优选内容 图4 13全译码 两片2764EPROM的扩展连接图 32 优选内容 4 3 3数据存储器的扩展1 数据存储器芯片 图4 14常用静态RAM芯片的引脚图 33 优选内容 图4 15iRAM芯片的引脚图 34 优选内容 2 数据存储器的扩展举例 例4采用2114芯片在8031片外扩展1KB数据存储器 图4 16用两片2114EPROM的扩展连接图 35 优选内容 4 3 4兼有片外程序存储器和片外数据存储器的扩展举例例5采用2764和6264芯片在8031片外分别扩展24KB程序存储器和数据存储器 扩展连接电路如图4 17所示 从图中可以看出 各有一片2764和一片6264的片选端并接在一根译码输出线上 即有2764和6264芯片相同的地址单元将会同时选通 这不会发生地址冲突 因为两种芯片的控制信号是不一样的 请读者自己分析两种存储器及各芯片的地址范围 36 优选内容 图4 17兼有片外ROM 又有片外RAM的扩展连接图 37 优选内容 4 4I O扩展 4 4 1I O口扩展概述1 MCS 51单片机I O口扩展性能单片机应用系统中的I O口扩展方法与单片机的I O口扩展性能有关 1 在MCS 51单片机应用系统中 扩展的I O口采取与数据存储器相同的寻址方法 所有扩展的I O口或通过扩展I O口连接的外围设备均与片外数据存储器统一编址 任何一个扩展I O口 根据地址线的选择方式不同 占用一个片外RAM地址 而与外部程序存储器无关 38 优选内容 2 利用串行口的移位寄存器工作方式 方式0 也可扩展I O口 这时所扩展的I O口不占用片外RAM地址 3 扩展I O口的硬件相依性 在单片机应用系统中 I O口的扩展不是目的 而是为外部通道及设备提供一个输入 输出通道 因此 I O口的扩展总是为了实现某一测控及管理功能而进行的 例如连接键盘 显示器 驱动开关控制 开关量监测等 这样 在I O口扩展时 必须考虑与之相连的外部硬件电路特性 如驱动功率 电平 干扰抑制及隔离等 4 扩展I O口的软件相依性 根据选用不同的I O口扩展芯片或外部设备时 扩展I O口的操作方式不同 因而应用程序应有不同 如入口地址 初始化状态设置 工作方式选择等 39 优选内容 2 I O口扩展用芯片MCS 51单片机应用系统中I O口扩展用芯片主要有通用I O口芯片和TTL CMOS锁存器 缓冲器电路芯片两大类 通用I O口芯片选用Intel公司的芯片 其接口最为简捷可靠 如8255 8155等 采用TTL或CMOS锁存器 三态门电路作为I O扩展芯片 也是单片机应用系统中经常采用的方法 这些I O口扩展用芯片具有体积小 成本低 配置灵活的特点 一般在扩展8位输入或输出口时十分方便 可以作为I O扩展的TTL芯片有74LS373 74LS277 74LS244 74LS273 74LS367等 在实际应用中 根据芯片特点及输入 输出量的特征 应选择合适的扩展芯片 40 优选内容 3 I O口扩展方法根据扩展并行I O口时数据线的连接方式 I O口扩展可分为总线扩展方法 串行口扩展方法和I O口扩展方法 1 总线扩展方法 扩展的并行I O芯片 其并行数据输入线取自MCS 51单片机的P0口 这种扩展方法只分时占用P0口 并不影响P0口与其它扩展芯片的连接操作 不会造成单片机硬件的额外开销 因此 在MCS 51单片机应用系统的I O扩展中广泛采用这种扩展方法 41 优选内容 2 串行口扩展方法 这是MCS 51单片机串行口在方式0工作状态下所提供的I O口扩展功能 串行口方式0为移位寄存器工作方式 因此接上串入并出的移位寄存器可以扩展并行输出口 而接上并入串出的移位寄存器则可扩展并行输入口 这种扩展方法只占用串行口 而且通过移位寄存器的级联方法可以扩展多数量的并行I O口 对于不使用串行口的应用系统 可使用这种方法 但由于数据的输入输出采用串行移位的方法 传输速度较慢 42 优选内容 3 通过单片机片内I O口的扩展方法 这种扩展方法的特征是扩展芯片的输入输出数据线不通过P0口 而是通过其它片内I O口 即扩展片外I O口的同时也占用片内I O口 所以使用较少 但在MCS 51单片机扩展8243时 为了模拟8243的操作时序 不得不使用这种方法 43 优选内容 4 4 28255可编程并行I O口扩展 1 芯片引脚及其内部结构 图4 188255A芯片的引脚图 44 优选内容 图4 198255A芯片的内部结构图 45 优选内容 表4 38255芯片的引脚信号说明 46 优选内容 续表 47 优选内容 48 优选内容 2 8255的操作方式 1 读 写控制逻辑操作选择 表4 48255的口操作状态 49 优选内容 2 8255的三种工作方式方式0 基本输入 输出方式 这种工作方式不需要任何选通信号 A口 B口及C口的两个4位口中任何一个端口都可以由程序设定为输入或输出 作为输出口时 输出数据被锁存 作为输入口时 输入数据不锁存 方式1 选通输入 输出方式 在这种工作方式下 A B C三个口分为两组 A组包括A口和C口的高4位 A口可由编程设定为输入口或输出口 C口的高4位则用来作为A口输入 输出操作的控制和同步信号 B组包括B口和C口的低4位 B口可由编程设定为输入口或输出口 C口的低4位则用来作为B口输入 输出操作的控制和同步信号 A口和B口的输入数据或输出数据都被锁存 方式1下的逻辑组态关系如图4 20所示 50 优选内容 图4 208255方式1逻辑组态关系图 51 优选内容 52 优选内容 3 8255A的编程控制字 图4 228255A控制字的格式与定义 a 方式选择控制字 b C口置位 复位控制字 53 优选内容 图4 238255的扩展连接图 3 8031与8255的接口方法 54 优选内容 例6试对图4 23中的8255A编程 使其各口工作于方式0 A口作输入 B口作输出 C口高4位作输出 C口的低4位作输入 由方式选择控制字的格式与定义可确定出满足要求的方式控制字应为91H 10010001B 对8255A编写程序将91H写入它的控制寄存器 初始化程序为MOVDPTR FF7FH DPTR作地址指针 指向控制口MOVA 91HMOVX DPTR A因为图4 23扩展电路未使用高位地址线 所以端口地址也可使用8位 55 优选内容 例7试按图4 23扩展电路 写出自8255A的B口输出单片机中R7内容与自8255的A口输入数据到单片机R3的程序 使用8位地址 8255A的A B C口及控制口地址分别为7CH 7DH 7EH 7FH 则实现所要求功能的程序为MOVR0 7FH R0作地址指针 指向控制口MOVA 91HMOVX R0 A 方式控制字送控制寄存器MOVR0 7DH R0指向B口MOVA R7 MOVX R0 A R7的内容输出到B口DECR0 使R0指向A口MOVXA R0 从A口输入数据到累加器AMOVR3 A 把输入数据送存到R3中 56 优选内容 4 4 38155可编程并行I O口扩展8155芯片含有256 8位静态RAM 两个可编程的8位I O口 一个可编程的6位I O口 一个可编程的14位定时器 计数器 8155芯片具有地址锁存功能 与MCS 51单片机接口简单 是单片机应用系统中广泛使用的芯片 1 8155的结构与引脚 8155的逻辑结构如图4 24 a 所示 引脚分布如图4 24 b 所示 57 优选内容 图4 248155逻辑结构及引脚 a 8155逻辑结构 b 8155芯片引脚图 58 优选内容 2 8155的RAM和I O口编址8155在单片机应用系统中是按外部数据存储器统一编址的 地址为16位 其高8位地址由片选线 CE提供 低8位地址为片内地址 当IO M 0时 对RAM进行读 写 RAM低8位地址为00H FFH 当IO M 1时 对I O口进行读 写 I O口及定时器由AD0 AD3进行寻址 其编址如表4 5所示 59 优选内容 表4 58155内部端口编址 60 优选内容 3 8155的工作方式与基本操作8155的A口 B口可工作于基本I O方式或选通方式 C口可作为输入 输出口线 也可以作为A口 B口选通方式工作时的状态控制信号线 工作方式选择是通过对8155内部命令寄存器 命令口 设定控制字来实现的 三个口可组合工作于四种方式下 命令字的格式及定义如图4 25所示 61 优选内容 图4 258155命令控制寄存器格式 62 优选内容 图4 268155选通方式信号逻辑组态 63 优选内容 图4 278155状态寄存器格式 64 优选内容 4 8155内部的定时器 计数器 图4 288155定时器寄存器格式 65 优选内容 图4 298155定时器方式及输出波形 66 优选内容 5 8155与单片机的扩展连接 图4 30用8155的扩展连接 67 优选内容 在图中连接状态下 8155所占的地址为RAM地址范围 7E00H 7EFFHI O端口地址 命令 状态口7F00HPA口7F01HPB口7F02HPC口7F03H定时器低字节7F04H定时器高字节7F05H 68 优选内容 例8使8155用作I O口和定时器工作方式 A口定义为基本输入方式 B口为基本输出方式 定时器为方波发生器 对输入脉冲进行24分频 8155中定时器最高计数频率为4MHz 则相应的程序如下 MOVDPTR 7F04H DPTR指向定时器低字节MOVA 18H 计数器常数0018H 24MOVX DPTR A 计数常数低8位装入计数器低字节INCDPTR 使DPTR指向定时器高字节MOVA 40H 01000000B 置定时器方式为连续方波输出MOVX DPTR A 装计数器高字节值MOVXDPTR 7F00H 使DPTR指向命令 状态口MOVA C2H 11000010B MOVX DPTR A 向命令 状态口送方式控制字 并启动定时器 69 优选内容 4 4 4用TTL芯片扩展简单的I O接口在MCS 51单片机应用系统中 采用TTL或CMOS锁存器 三态门芯片 通过P0口可以扩展各种类型的简单输入 输出口 P0口是系统的数据总线口 通过P0口扩展I O口时 P0口只能分时使用 故输出时接口应有锁存功能 输入时 视数据是常态还是暂态的不同 接口应能三态缓冲 或锁存选通 不论是锁存器 还是三态门芯片 都只具有数据线和锁存允许及输出允许控制线 而无地址线和片选信号线 而扩展一个I O口 相当于一个片外存储单元 CPU对I O口的访问 要以确定的地址 用MOVX指令来进行 70 优选内容 1 用锁存器扩展输出口 图4 31用74LS377扩展输出口 71 优选内容 72 优选内容 2 用锁存器扩展输入口 图4 32用74LS373扩展输入口 73 优选内容 中断系统初始化程序 PINT SETBIT0 外部中断0选择为下降沿触发方式SETBEA 开系统中断MOVR0 50H R0作地址指针 指向数据区首址SETBEX0 外部中断0中断允许中断服务程序 ORG0003HPINT0 AJMPINT0INT0 MOVDPTR 0BFFFH 使DPTR指向74LS373扩展输入口MOVXA DPTR 从74LS373扩展输入口输入数据MOV R0 A 输入数据送数据区INCR0RETI 74 优选内容 3 用三态门扩展输入口 图4 33用74LS244扩展输入口 75 优选内容 4 扩展多个输入 输出口举例 图4 34扩展多个输入口和输出口的连接 76 优选内容 4 4 5用串行口扩展并行I O口 MCS 51单片机的串行口在方式0 移位寄存器方式 下 使用移位寄存器芯片可以扩展一个或多个并行I O口 扩展并行输入口时 可用并入串出移位寄存器芯片 如CMOS芯片4014和74LS165芯片 77 优选内容 图4 358并行输入 串行输出移位寄存器芯片的引脚图 a 4014 b 74LS165 78 优选内容 图4 368串行输入 并行输出移位寄存器芯片的引脚图 a 4094 b 74LS164 79 优选内容 1 用串行口扩展

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论