MCS-51单片机的扩展与应用
- 格式:ppt
- 大小:2.87 MB
- 文档页数:4
第八章MCS-51单片机存储器的扩展第一节MCS-51单片机存储器的概述(一)学习要求1、熟悉MCS-51 单片机的系统总线及系统总线扩展结构2、掌握常用的片选方法:线选法和全地址译码法。
(二)内容提要1、三总线的扩展方法单片机内资源少,容量小,在进行较复杂过程的控制时,它自身的功能远远不能满足需要。
为此,应扩展其功能。
MCS-51单片机的扩展性能较强,根据需要,可扩展。
三总线是指地址总线、数据总线、控制总线。
1)地址总线MCS-51 单片机地址总线宽度为16 位,寻址范围为64K。
地址信号:P0 作为地址线低8 位,P2 口作为地址线高8 位。
2)数据总线MCS-51 单片机的数据总线宽度为8 位。
数据信号:P0 口作为8 位数据口,P0 口在系统进行外部扩展时与低8 位地址总线分时复用。
3)控制总线主要的控制信号有/WR 、/RD 、ALE 、/PSEN 、/EA 等。
2、系统的扩展能力MCS-51 单片机地址总线宽度为16 位,因此它可扩展的程序存储器和数据存储器的最大容量是64K(216)。
1)线选法线选法就是将多余的地址总线(即除去存储容量所占用的地址总线外)中的某一根地址线作为选择某一片存储或某一个功能部件接口芯片的片选信号线。
一定会有一些这样的地址线,否则就不存在所谓的“选片”的问题了。
每一块芯片均需占用一根地址线,这种方法适用于存储容量较小,外扩芯片较少的小系统,其优点是不需地址译码器,硬件节省,成本低。
缺点是外扩器件的数量有限,而且地址空间是不连续的。
2)全地址译码法由于线选法中一根高位地址线只能选通一个部件,每个部件占用了很多重复的地址空间,从而限制了外部扩展部件的数量。
采用译码法的目的是减少各部件所占用的地址空间,以增加扩展部件的数量。
3)译码器级连当组成存储器的芯片较多,不能用线选法片选,又没有大位数译码器时,可采用多个小位数译码器级连的方式进行译码片选.4)译码法与线选法的混合使用译码法与线选法的混合使用时,凡用于译码的地址线就不应再用于线选,反之,已用于线选的地址线就不应再用于译码器的译码输入信号.(三)习题与思考题1. 简要说明MCS-51 单片机的扩展原理。
MCS-51单片机原理 应用小结一 什 是单片机MCS-51单片机系统结构MCS-51 储器 布尔处理器四 MCS-51指 系统五 MCS-51中断系统六 MCS-51的定时器/计数器七 MCS-51的串行通信口八 MCS-51的汇编语言程序 计基础九 MCS-51系统的 能扩展一 什 是单片机一 什 是单片机•它是将组成微型计算机所必须的部件 中央处理器C弃栈 程序 贮器 R适退) 数据 贮器 RA退) 输入/输出 I/适)接口 定时/计数器 串行口 系统总线等 集成在一个超大规模集成电路芯片MCS-51单片机系统结构•MCS-51硬件配置基本配置–8 CPU–振荡器和时钟电路–片内4K/8K 节ROM/EPROM 128/256 节RAM –可寻址外部程序 储器和数据 储器各64K 节– 十多个特殊 能寄 器(SFR)–32线并行I/O接口–2/3个片内16 定时器/计数器–片内中断处理系统 5/6个中断源 2个优先 –1个片内全 工串行I/O口– 处理 能弃代.代弃代.代--弃代.7弃以.代弃以.代--弃以.7VccVssMCS-51单片机内部硬件结构PCONSCON TMOD TCON 弃令.代弃令.代--弃令.7弃3.代弃3.代--弃3.7弃SE送ALE/EARS标下标AL令下标AL以TH0TL0TH1TL1T2CONTH2TL2RCAP2L RCAP2H SBUF IE IP中央处理器(CPU)• 8051的 心部件是一个8 CPU,它是 8051的指挥中心 执行机构 读入和分 析 条指 控制单片机的各个部件执 行制定的操作 它是由8 算术/逻辑运算 部件ALU 布尔处理器 定时/控制部件 和若 寄 器等 要部件组成• 算术/逻辑运算部件ALU– ALU包括运算器 布尔处理器 累 器A 寄 器B 暂 器 程序状态 PSW寄 器等 – 能是实 数据的算术/逻辑运算 变 处理 和数据传 等操作 + – 核 ÷算术运算 或 非 或 逻辑运算 循 移 处理 – 8051的指 码 超过3 节 当 频12MHZ时 指 的执行时间 1us(64条) 2us(45条) 乘 除法指 4us•用寄 器 8051内部有工作寄 器 –累 器A(8 )器用寄器和特殊能寄–寄 器B(8 ) –数据指针DPTR(16 –程序状态Cy AC) )OV — PPSW(8F0RS1 RS0–堆及指针SP8)• 单片机时钟电路振荡器输出信号向CPU提供两相时钟信号 提供两相时钟信号MCS-51单片机各种周期的相互关系 单片机各种周期的相互关系 一个机器周期=6个状态=令以个振荡周期指 机器周期 周期 机器周期XTAL2 (OSC)S4 S1 S3 S5 S6 S2 S3 S4 S5 S6 S1 S2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P2振荡周期 时钟周期MCS-51取指 执行时序图 取指/执行时序图 取指S1 P1 P2 OSC ALE 读操作码 S1 S2 S3 单 节单周期指 例 读 一个操作码(丢 S5 S6 ) 读 S1 一个操作码 S2 P1 P2 S3 P1 P2 S4 P1 P2 S5 P1 P2 S6 P1 P2 S1 P1 P2 S2 P1 P2 S3 P1 P2 S4 P1 P2 S5 P1 P2 S6 P1 P2<A>S4 INC A读操作码 S1 <B> S2 S3 节单周期指 例读第个节 S6读 S1一个操作码S4 S5 ADD A,DATA读操作码 S1 单 节 S2 S3 周期指 例读一个操作码(丢 S6) S1 S2 S3 S4 S5 S6<C>S4 S5 INC DPTR读操作码 S1 <D> 节 S2 S3 周期指 例读一个操作码(丢)无取指 S1 S2无 ALE S3 S4 S5 S6S4 S5 S6 MOVX A,@DPTRMCS-51 并行I/O口结构• MCS-51单片机有4个 向并行的8 I/O口P0~ P3 可并行输入或输出8 数据 可按 使用• 8051有4个8 并行 I/O 接口 各 特殊的电路结构 有自 的锁 器 输出驱动和输入缓 器 种结构在输出时锁 即输出新数据之前通道口 的数据保持 变 • 扩展外部 能时 P0 P1 P2均可做 型I/O口 使用 P3作做 型I/O口和第 特殊 能口用 当 外部 能扩展时 P0口做 8 地址和数据总线复 用 P2口做高8 地址 P1口 型I/O端口• P0口地址/数据复用总线口 控制信号为1,输出的地址数据通过 过 相器驱动T2 一般I/O口控制信号 0 拉电阻 门输出 0使T1截 ,输出 漏极开漏电路 需外接门驱动T1,同时通地 /数 址 据 读 器 寄控 制VCC & T1 P0.X引 脚1内 总 部 线 D锁 CL 写 器 锁器 QT2/Q读 脚 引• P0口– 除了读引脚操作外 写入操作可读锁器实读锁器—修改—再– P0口 问外部 储器时是地址/数据复用总线口 真 做通用I/O口是准 向 由输出状态变 输入时 置锁 输入 输出 能驱动8个TTL负载 – 一般P0做地址/数据复用总线口 就 自动置成地址/数据复用总线口向I/O口 器 1再能再做通用I/O口时用复• P2口–当系统外部 能扩展时 P2口输出高8 地址 时 能再做 通用I/O口使 扩展时可做通用I/O口 输出 能驱动4个TTL 负载 当开关接通地址信号,地址信号通过 相器驱动T1,输出到 引脚 当开关接通Q,进行通用I/O口操 属于准 向口,由输出转为 输入状态时,必须先置位锁存器使T1截止 P2口内部有上拉电阻控 制 地 址 读 器 寄 P2.X引 脚 内 总 部 线 D锁 CL 写 器 锁器QVCCT1/Q读 脚 引• P1口–P1是 准的8 TTL负载 准 向并行通用I/O口 输出 能驱动4个VCC 读 器 寄 P2.X引 P1.X引脚 脚 内 总 部 线 D锁 CL 写 器 锁器 QT1/Q读 脚 引• P3口–P3是 变 能口 即可做8 准 向并行通用I/O口 能 输出 能驱动4个TTL负载 又 有第VCC 读寄 器变 能输出P3.X 引脚 内部总线 D CL 写锁 器 Q /Q T1读引脚变能输入线 P3.0 P3.1引脚 10 11 12 13 14 15 16 17 RXD TXD INT0 INT1 T0 T1 WR RD第二能P3 口 的 第 二 功 能 表串行输入口 串行输出口 外部中断0 外部中断1P3.2 P3.3P3.4 P3.5定时器0的计数输入定时器1的计数输入P3.6 P3.7外部数据储器写脉外部数据储器读脉并行I/O口的读-修改-写操作• 读-修改-写操作– 个并行I/O口均有读引脚和读锁 器两种读方式 MCS-51 有些指 是读引脚内容 有些是读锁 器内容 –读锁 器指 是从锁 器种读出内容 进行处理 然 再写 入锁 器 称 读—修改—写操作 当指 的目的操作数 某个I/O口或 中的某一 时 该指 读的是锁 器内容 – 有该 能的指 有• • • • • 逻辑 逻辑 或 增 指 循 判跳 清0指 ANL P1,A 逻辑或 XOR P1,A 取 INC P2 指 DJN不 P3,LABEL 传 指 CLR P1.0 置 指 ORL P1,A CPL P3.0 DEC P2 MOV P1.0,C SETB P1.0并行I/O口结构—总线• 总线–当 问外部 储器时 P2口输出高8 地址 P0输 出 8 地址 通过ALE信号将P0口的 8 地址锁 到外部地址锁 器 P0口接收数据作准备 /PSEN用于 问外部程序 储器 问外部数据 储器时 执行MOVX指 P3口自动产生/RD和/WR 信号允许对外部数据 储单元进行读写• MCS-51 节电运行方式待机(休闲) 待机(休闲)方式 Idle耗运行方式掉电保护方式 掉电保护方式 弃owe⒈ Down 在三cc=5三 fo⒉c=令以退Hz条件 fo⒉c=令以退Hz条件常工作时电流 以代mA 待机(休闲) 待机(休闲)方式时电流 5mA掉电保护方式时电流仅75 掉电保护方式时电流仅75µA两种弃C适送S退适D耗工作方式由电源控制寄双 双 双 GF令器弃C适送确定 器弃C适送确定 弃C适送GF代 弃D IDL中 S退适D 波特率倍增 在串行通信中使用 GF令 GF代 GF令 GF代 通用 志 弃D 掉电方式控制 弃D=令 弃D=令 进入掉电工作方式 待机(休闲) IDL 待机(休闲)方式控制 , IDL=令 IDL=令,进入待机工作方式待机休闲方式方式状态 待机 休闲 方式状态 ●片内时钟仅向中断源提供 余被阻断 器和片内RA退 RA退状态保持 ● 弃C 特殊 能寄 器和片内RA退状态保持 I/适引脚端口值保持原逻辑值 ● I/适引脚端口值保持原逻辑值 ● ALE 保持逻辑高电 ● C弃栈 工作 但中断 能继续 在 状态进入 待机 休闲 状态进入 只要使弃C适送 弃C适送中 置令 只要使弃C适送中IDL 置令 待机 休闲 状态 出 产生中断 复变掉电保护方式掉电保护方式状态 掉电保护方式状态 ●片内振荡器停振 所有 能部件停 片内RA退数据信息保 RA退数据信息 ●片内RA退数据信息保 变 ● ALE 弃SE送 电 三cc可降至 可降至以三 ● 三cc可降至以三 但 能真 掉电 掉电保护状态进入 掉电保护状态进入 只要使弃C适送中 只要使弃C适送中弃D 弃C适送 置令 置令工作掉电保护状态 出 片内RA退 RA退数据 唯一方法是硬件复 复 片内RA退数据 变 特殊 能寄 器内容按复 状态初始化MCS-51 储器 布尔处理器MCS-51:程序存储器 数据存储器分为两个独立存储器逻辑空间,各有自己的寻址系统 控制信号和功能,分开编址,称为哈 结构•MCS-51的 储空间分 类–片内 片外统一编址的64K 节程序 储器空间–64K 节的外部数据 储器地址空间–128/256 节的内部程序 储器空间 中包括特殊 能寄 器特殊 能寄 器SFR 80H FFH 80H 88H 90H 98H A0H A8H B0H B8H D0H E0H F0H 特殊功能寄存器中位寻址外部RAM (I/O 口地址)FFFFH FFFFH 外部ROM 通用RAM 区00H 1FH 20H 2FH30H 7FH 0000H 内部数据 储器 a 外部数据 储器 b 内部ROM (EA=1)外部ROM(EA=0)0000H 0000H0FFFH 0FFFH1000H程序 储器c工作寄 器区MCS-51单片机 储器结构寻址区128BRAM•MCS-51的程序 储空间–MCS-51 置16 的程序计数器PC,可寻址64K 节程序 储器空间.–8051/8751片内4K 节的ROM/EPROM;8052片内8K 节的ROM/EPROM;8031/8032无内部程序 储器;–/EA引脚 高电 ,CPU首先 问内部程序 储器, 问超过4K(8K) 节的程序 储器时, CPU自动转向 问外部程序 储器,/PSEN输出有效信号.–/EA引脚 电 , CPU只 问外部程序 储器.–程序 储器的某些单元 用于某些特定的程序段 •0000H—0002H 程序的起始•0003H—0032H 中断服 程序中断源首地址外部中断0(/INT0)0003H定时器0溢出中断000BH外部中断1(/INT1)0013H定时器1溢出中断001BH串行口中断0023H定时器2溢出002BH个中断只保留8个单元,一般 够存放中断服务程序,常用转移指令转向实际的中断服务程序段.MCS-51的数据存储器MCS-51的数据存储器也分为内部和外部,分别用MOV和MOVX 指令访问.特殊 能寄 器FFH 90H 98H A0H A8H B0H B8H D0H E0H F0H 特殊功能寄存器中外部RAM (I/O 口地址)FFFF H SFR 通用RAM 区00H 1FH 20H 2FH 30H 7FH 80H 80H 88H 位寻址0000H内部数据 储器 a 外部数据 储器b工作寄器区寻址区128BRAM内部数据存储器的空间分配内部数据 储器中的 地址特殊 能寄 器地址及 能表•外部程序 储器 问–对于8051/8751/8052/8752片内4K/8K 节的程序 储器外, 可扩展60/56K程序 储器;对于8031/8032无内部程序 储器,必须全部由外部配置,一般选用EPROM;–若 地址程序段在片内,/EA引脚 高电 ,CPU 从0000H 问内部程序 储器,程序执行超过4095/8191单元 , CPU自动转向 问外部程序 储器,内部和外部 问速度相 .若无外部程序 储器, 4095/8191单元 能有数据.•外部程序 储器 问–CPU 问外部程序 储器时,PC的 8 地址由P0口输出,高8 地址由P2输出.从外部程序储器读入的指 由P0口输入.–/ALE 地址锁 信号, 个机器周期出 两次,只有 问外部数据 储器时才 一次.因/ALE信号 振频率的1/6,实际应用中可借用作定时信号.–/PSEN是 问外部程序 储器的 用选通信号, 电 有效. 个机器周期有效两次.•外部数据 储器 问–MCS-51片内配置128/256 节的RAM,可 据需要扩展至64KRAM–CPU 问外部数据 储器的地址由数据指针DPTR或工作寄 器Ri提供, Ri提供8 地址,由P0口输出; DPTR提供16 地址,由P0口输出DPL,DPH由P2输出.读写操作的数据由P0口输入/输出.– 问外部RAM的读/写选通信号由/RD /WR提供– 问内部 是外部RAM是通过 的指 来区别 问内部RAM选用MOV类指 问外部RAM选用MOVX指MOVX A @Ri/ MOVX A @DPTR,MOVX @Ri,A/ MOVX @DPTR,A–由于 问外部程序或数据 储器各有 的选通信号 提供 问的地址单元 从而在结构 把程序 储器和数据 储器分开•外部扩展地址/数据总线–P0口既是 8 地址总线,又是8 数据总线,分时复用,P2口 高8 地址总线,从而形成了16地址总线和8 数据总线.ALE /PSEN 及P3口的一部分组成控制总线 形成总线结构–P0口分时复用 有 向 能 需外接 拉电阻–一旦外部扩展 储器 P2口 能作一般I/O口使用•MCS-51单片机有7种基本寻址方式序号寻址方式相应 储器 寄 器空间1寄 器寻址R0—R7,Acc,B,Cy,DPTR2直接寻址内部RAM 128 节和特殊 能寄 器3寄 器间接寻址内部RAM(@R1,@R0,SP)外部RAM(@R1,@R0,@DPTR)4立即寻址程序 储器立即数5基址寄 器 变址程序 储器(@A+DPTR,@A+PC)寄 器间接寻址6相对寻址有效地址=PC当前值 基址+偏移量7 寻址内部RAM和特殊 能寄 器的可 寻址单元–布尔 处理器了更好地 面向测控系统 MCS-51系列单片机内部 置有完整的 能极强的 处理器 被誉 有 CPU的单片机累 器, 寻址寄 器, 寻址I/O口, 寻址内部RAM, 寻址指 ,程序 储器等组成MCS-51的 处理器对 个 单元可 进行置 ,清零,求 ,传 ,判跳和逻辑运算.操作结果一般 于 累 器中.四 MCS-51指 系统MCS-51 指 系统指 系统 数据传 类指 数据传 类指。