MCS-51单片机应用教程1.4.ppt_第1页
MCS-51单片机应用教程1.4.ppt_第2页
MCS-51单片机应用教程1.4.ppt_第3页
MCS-51单片机应用教程1.4.ppt_第4页
MCS-51单片机应用教程1.4.ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1 4单片机的存储器配置 80C51存储器配置程序存储器内部数据存储器外部数据存储器 主要内容 数据存储器 80C51内部集成有一定容量的程序存储器和数据存储器 如果不能满足设计需要ROM和RAM都可以进行外部扩展 其存储器的配置情况可以表示为 外部ROM 物理上分为4个空间 80C51单片机的存储器配置情况 逻辑上分为3个空间 片内ROM 片外ROM片内RAM 片外RAM 片内 外统一编址的程序存储器内部数据数据存储器外部数据存储器 64KB 256B 64KB 下面就分别介绍80C51单片机程序存储器和数据存储器的配置及特点 一 程序存储器程序存储器用于存放编好的程序和表格常数 寻址范围 0000H FFFFH容量64KB 即地址长度 16位 先寻址内部ROM 只寻址外部ROM 当PC值超过片内ROM容量时会自动转向外部存储器空间 对于有内部ROM的单片机 如8051 在正常运行时 此引脚接高电平 该引脚接低电平时 单片机工作在调试状态 对于内部没有ROM的单片机 如8031 此引脚始终接低电平 2 一些关键的存储单元 1 0000H单元 系统的启动地址系统复位后 程序计数器PC的值为0000H 所以系统必须从0000H单元开始执行程序 0000H是系统的启动地址 一般在此单元放一条跳转指令 用户的主程序从跳转后的地址开始存放 0003H 外部中断0入口000BH T0溢出中断入口0013H 外中断1入口001BH T1溢出中断入口0023H 串口中断入口 2 5个特殊的单元 中断服务程序的入口地址 每两个相邻入口地址间仅有8个存储单元 这是不可能存放中断服务程序的 所以在入口地址处通常都存放一条跳转指令 跳转后的地址即为中断服务程序的实际入口地址 二 内部数据存储器物理上分为两个不同的存储空间 00H 7FH 低128B80H FFH 高128B 又叫特殊功能寄存器 SFR 区 1 数据存储区 低128单元 数据存储区又分为三个区域 通用寄存器区 位寻址区和用户RAM区 1 通用寄存器区00H 1FH共32个单元是4个通用工作寄存器区 每个区有8个8位的寄存器 R0 R7 可以用来存放操作数及中间结果等 内部RAM低128单元 08H 10H 18H 思考 80C51的内部RAM低128B中共有多少个工作寄存器 答案 共有32个 注意 在任一时刻 CPU只能选择使用其中的一组工作寄存器 即8个 CPU当前使用的寄存器区叫做当前工作寄存器区 编程时可以在当前工作寄存器R0 R7中选择合适的寄存器使用 其中选择这4组寄存器区的哪一组是由用户在程序中通过设定专门的寄存器事先写明的 2 位寻址区20H 2FH的16个单元可以进行位寻址 也可以作为一般的RAM单元进行字节寻址 各寻址位都有各自的位地址 范围为 00H 7FH 该区域共有128位可寻址位 位寻址区 80C51具有位处理机功能 可以进行位寻址的存储空间包括位寻址区和SFR的11个专用寄存器 3 用户RAM区共80个单元30H 7FH 这部分的使用不作限制 堆栈一般开设在此区 2 特殊功能寄存器区 高128单元 特殊功能寄存器又称为专用寄存器 单元地址为80H FFH 51子系列SFR的地址分配及位地址见下表 表中给出了特殊功能寄存器的符号 名称和地址 注意 表中共有4个双字节寄存器 PC为双字节寄存器 但是不在80H FFH范围内 表中 凡地址能被8整除的寄存器都是可位寻址的寄存器 通过观察上表 可以得到如下结论 80C51内部共有21 22 个SFR 这21个特殊功能寄存器在内部RAM高128单元中的分布是不连续的 虽然其中还有空闲的地址 但用户不能使用 程序存储器PC是独立于SFR之外唯一一个不可寻址的专用寄存器 它不占用RAM单元 物理上独立 编程时可直接利用 在21个SFR中有11个寄存器可以进行字节寻址的同时还可以进行位寻址 这11个可以进行位寻址的寄存器原则上有88位可寻址位 但由于有些寄存器中的个别位没有意义 所以共有82位可寻址位 共210位 各寄存器的名称及主要功能 1 与算术运算有关的寄存器 A 累加器 为8位寄存器 最为常用 可以存放操作数 中间结果 运算结果等 如 MOVA 30H B B寄存器 乘 除法运算用 为8位寄存器 主要用于乘 除运算 也可作一般寄存器使用 PSW 程序状态字寄存器 ProgramStatusWord 为8位寄存器 存放程序运行的状态信息 其中有些位由硬件置位 有些由软件设定 PSW的位状态可由专门的指令测试也可用指令读出来 各位的含义如图所示 P RS0 RS1 OV F0 AC CY PSW寄存器 D7HD6HD5HD4HD3HD2HD1HD0H 位地址 位名称 各位的含义 CY 进位 借位标志功能 算术运算时作为进位 借位标志位位操作中常作累加位由硬件置 复位 AC 辅助进 借位标志功能 执行加 减运算时表示低四位向高四位的进位 借位情况 由硬件置 复位 F0 用户定义标志位功能 用户可以定义状态标记 由软件置 复位 OV 溢出标志位在带符号加减运算中 OV 1表示加减结果超出A表示的有符号数的范围 即超过 128 127 定义10000000 128 在乘法运算中 OV 1表示乘积超过了255 即结果高位放在B中 低位放在A中 OV 0说明乘积只在A中 在除法运算中 OV 1表示除数为零 不能进行运算 由硬件置 复位 P 奇偶标志位功能 表示累加器A中1的个数 P 1 A中1的个数为奇数 P 0 A中1的个数为偶数 由硬件置 复位 RS1 RS0 当前工作寄存器区选择控制位功能 从内部RAM低128B中选择一组寄存器区作为当前工作寄存器 00 0区R0 R7 地址00H 07H 01 1区R0 R7 地址08H 0FH 10 2区R0 R7 地址10H 17H 11 3区R0 R7 地址18H 1FH 由软件置 复位 注意 当前工作寄存器区一旦确定 R0 R7各个寄存器的地址也就确定了 例如 设定RS1 RS0分别为01 则此时指令MOVA R3中A中最终存放的是哪个单元的数据 答案 0BH PSW应用举例 例 有符号数8CH和95H执行加法运算结果放入A中 PSW寄存器的内容为多少 用户标志位设为0 择第二组工作寄存器为当前工作寄存器 因为10001100 1001010100100001 CY 1AC 1F0 0RS1 RS0 10OV 1保留位设为0P 0 PSW 11010100B D4H 2 指针型寄存器 PC 程序计数器是一个16位的计数器 功能 用来存放即将执行的下一条指令的地址 程序存储器地址 在物理上独立 没有访问地址 所以无法对它进行读 写操作 但是可以通过转移 调用返回等指令改变其内容 程序执行时PC可以自动加1 系统复位时PC 0000H 使CPU从启动地址重新取指令执行 举例 0020H MOVA 0AH 该指令执行完后PC的值为 MOVR1 A 答案 0022H 指令本身占两个字节 SP 堆栈指针寄存器一个8位的专用寄存器 可软件设置初值 功能 指明堆栈顶部在内部RAM中的位置 地址 系统复位时SP 07H 但是数据要从08H单元开始存放 因为堆栈的底部是不能存放数据的 注意 原则上堆栈可以根据用户的需要在内部RAM中开设 但内部RAM08H 1FH属于工作寄存器区 所以一般把SP的值设得大一些在30H 7FH之间 SP的值可以随着压栈和出栈操作自动增量或减量 始终指向堆栈的顶部 DPTR 数据指针寄存器16位专用寄存器 由两个8位的寄存器组成DPTR可用作一个16位寄存器用 也可以作两个8位的寄存器使用 功能 DPTR通常用来存放16位地址 可以借助它访问外部RAM MOVX指令 和外部ROM MOVC指令 3 并行输入 输出端口的锁存器80C51的四个并行口都有各自的锁存器并分别用P0 P1 P2 P3表示 都是8位的锁存器 在实际叙述时一定要明白P0 P1 P2 P3表示的是端口还是端口的锁存器 4 串行数据缓冲器用于存放串行口将要发送和接收的数据 包含两个物理上独立的寄存器 发送缓冲器接收缓冲器 5 定时 计数器80C51有两个16位的定时器 计数器T0和T1 T0和T1分别由两个8位的寄存器构成 可用于设定计数初值 注意 T0和T1不能当作16位寄存器使用 只能当成两个8位寄存器分别访问 6 其它控制寄存器除了以上介绍的这些寄存器还有一些专用寄存器 如IP IE TMOD TCON SCON PCON等 后续章节介绍 三 外部数据存储器80C51内部存储器不够用时 需要外接RAM和I O 此时需要注意几点 单片机可以访问的外部RAM地址空间为0 64KB 最多由16根地址线寻址 外部RAM与外接I

温馨提示

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

评论

0/150

提交评论