2.3 AT89C51存储器1.doc_第1页
2.3 AT89C51存储器1.doc_第2页
2.3 AT89C51存储器1.doc_第3页
2.3 AT89C51存储器1.doc_第4页
2.3 AT89C51存储器1.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

2.3 AT89C51 存储器 单片机原理及接口技术教案 主讲人:四川省盐业学校 吴凤梅教 学 课 题2.3 AT89C51 存储器 单片机原理及接口技术 第022页课 的 类 型新课(45分钟)教 学 对 象二年级职业中专生教材分析本节主要内容是 AT89C51 存储器的结构、地址分配及各特殊地址区域的用途。因本书介绍的是用低级语言汇编语言编程,所以编程者需要完全了解CPU硬件结构,因此本章节内容对整个课程的学习至关重要。教学指导思想 用结构图的形式展示AT89C51存储器的结构;结合存储器扩展的实例帮助学生理解存储器的结构。教学目的1、 掌握AT89C51的存储器结构、地址分配;2、 理解存储器地址空间的含义;3、 理解ROM和RAM的用途,及使用时如何区分;4、区分位地址和字节地址;5、掌握内部RAM各地址区域的用途;教 学 重 点 AT89C51的存储器结构、地址分配;教 学 难 点 AT89C51存储器各地址空间的用途;教 具 和 仪 器 讲授 + PPT演示;课时计划 2课时教 学 内 容 (详 后)内容备注新课引入:通过对89C51内部存储器构成的复习,讲解89C51片内258B的数据存储空间含义、4KB程序存储空间的含义。提问:1、数据存储器、程序存储器的用途?2、单片机在复杂的应用系统中,片内的4KB程序存储器、258B的数据存储器不能满足实际需求,怎么办?(复习P1口、P2口的第二功能) 引入新课:今天的课程就是要对AT89C51片内、片外的数据/程序存储器的地址编排、地址分配以及存储器内部各特殊存储单元的用途进行讲解。1KB=210B=1024B通过16根地址总线,片外最大能扩展64K的数据/程序存储空间。AT89C51 存储器地址分配片外ROM、片外RAM扩展的最大空间为64K。 一、 AT89C51 存储器地址编排1、 程序存储器地址编排(1)片内4KB的存储空间,即为 212个存储单元,用12位二进制数刚好能连续编排出212种组合,刚好能把每一种组合作为一个地址分配给每一个存储单元。12位二进制数从小到大的编排,即为从0000 0000 0000到1111 1111 1111 ,把每4位二进制数用一位十六进制数来表达则写为:000HFFFH。用4位的十六进制来表示则为:0000H0FFFH。(2)片外64KB的存储空间,即为 216个存储单元,用16位二进制数刚好能连续编排出216种组合,刚好能把每一种组合作为一个地址分配给每一个存储单元。16位二进制数从小到大的编排,即为从0000 0000 0000 0000到1111 1111 1111 1111,把每4位二进制数用一位十六进制数来表达则写为:0000HFFFFH。2、数据存储器地址编排片内256B的存储空间,即为 28个存储单元,用8位二进制数刚好能连续编排出28种组合,刚好能把每一种组合作为一个地址分配给每一个存储单元。8位二进制数从小到大的编排,即为从0000 0000到1111 1111 ,把每4位二进制数用一位十六进制数来表达则写为:00HFFH。用4位的十六进制来表示则为:0000H00FFH。片外64KB的数据存储空间的地址编排与片外64KB的程序存储空间的地址编排一样。二、 AT89C51 程序存储器1、地址分配1,程序存储器由片内4K ROM(地址范围从0000H0FFFH)和片外60K ROM(地址范围从1FFFHFFFFH)组成64K的存储空间。即片内ROM,片外ROM统一编址。CPU从片内ROM的4K开始访问,PC值大于0FFFH时,自动转向片外ROM空间取指。0,片外ROM提供64K的存储空间(地址范围从0000HFFFFH),忽略了片内ROM的4K空间。只允许CPU从片外ROM存储空间中取指令。所以低于0FFFH的存储器地址,可以在片内也可以在片外,到底CPU访问片内还是片外ROM,由引脚的电平决定。访问ROM所用操作指令为:MOVC 2、六个固有用途的 程序存贮器的某些单元被固定用于存放中断源的中断服务程序的入口地址。单片机复位后,程序计数器PC指向0000H这一单元,故单片机系统必须从0000H单元开始取指令,执行程序。程序存贮器中的0000H地址是系统程序的启动地址,一般在此单元中存放一条绝对跳转指令,跳向用户的主程序的起始地址。另外还有5个单元具有特殊用途,它们是5个中断源的中断服务程序的入口地址,见表:中 断 源入 口 地 址外部中断0(INT0) 0003H定时器0(T0) 000BH外部中断1(INT1) 0013H定时器1(T1) 001BH串行口 0023H 通常在这些入口处都放一条绝对跳转指令,跳向用户的中断服务程序、子程序所在的起始地址。其原因是由于两个中断入口间隔仅有8个单元,存放中断服务程序、子程序一般是不够的。三、 AT89C51 数据存储器1、地址分配片内RAM,片外RAM地址空间独立。片内RAM大小为256B(地址范围从0000H00FFH); 低128个单元(00H7FH),作为用户的数据寄存器和数据缓冲器,是真正的RAM区。高128个单元(80 HFFH)为特殊功能寄存器SFR所在的区域。访问片内RAM所用操作指令为:MOV片外RAM最大可扩展64K的地址空间(地址范围从0000HFFFFH),与片外扩展的I/O口统一编址。访问片外RAM所用操作指令为:MOVX2、片内RAM低128个单元的划分FFH00H1FH20H2FH30H7FH工作寄存器区位寻址区堆栈和数据缓冲区特殊功能寄存器SFR80H128字节R0R1R2R3R4R5R6R700H01H02H03H04H05H06H07H工作寄存器区0工作寄存器区108H0FH工作寄存器区210H17H工作寄存器区318H1FH 00H1FH的32个单元是4组通用工作寄存器区,每个区含有8个8位的寄存器,其编号为R0R7。用户可以通过指令来改变PSW中的RS0和RS1这两位来切换当前的工作寄存器组。只有一组能作为当前正在使用的寄存器,其余单元可以作为一般数据缓冲器使用。只能按字节寻址。20H2FH的16个单元,共168=128位,它们是一位位处理机的存贮器空间。单元中的每一位都有自己的位地址。 可以按字节寻址也可以按位寻址。30H7FH的单元为堆栈和数据缓冲区。堆栈原则上可以设在内部RAM(00H7FH或00HFFH)的任意区域,但00H1FH和20H2FH有别的用途,堆栈一般设在30HFFH.区间。只能进行字节寻址堆栈区:是片内RAM 中划分出来的一个连续存储区,用来暂时存放子程序端口地址、中断端口地址和其他需要保护的数据。堆栈指针SP总是指向栈顶,压栈时SP先加一,然后数据进栈,弹栈时数据先出栈,然后SP再减一。先进后出。3、片内RAM高128个单元21个特殊功能寄存器SFR每个SFR占一个RAM单元。他们离散的分布在80HFFH地址范围内,未占满这128个单元,对空闲地址的操作无意义。每个SFR都与特定功能有关。对单片机的控制,其实就是通过向SFR中写入不同的值来实现的。其

温馨提示

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

评论

0/150

提交评论