单片机第二章.doc

单片机第二章.doc

ID:58965693

大小:98.50 KB

页数:21页

时间:2020-09-16

单片机第二章.doc_第1页
单片机第二章.doc_第2页
单片机第二章.doc_第3页
单片机第二章.doc_第4页
单片机第二章.doc_第5页
资源描述:

《单片机第二章.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三节存储器一、51单片机存储器特点简介(1)单片机存储器的两种结构*普林斯顿:程序存储器和数据存储器统一编址如:MCS-96*哈佛结构:程序存储器和数据存储器分开编址如:MCS-51(2)交叠配置——51存储器结构特点交叠配置片内外ROM、RAM交叠存储器空间(地址编号)交叠四个物理存储空间内ROM外ROM内RAM外RAM用户角度的三个存储空间1)片内外统一编址的64K字节的程序存储器空间2)128字节的片内数据存储器空间2)64K字节的片外数据存储器空间怎么区分?硬件:不同的空间使用不同的控制信号软件:访问不同的空间使用不同的指令二、程序存储器1.编址与访问通过EA信号来控制内、外RO

2、M的寻址ExternalAccessenable片外程序存储器选用端EA=1先“内”后“外”EA=0只访问“外”外ROM4K外ROM60K内ROM4K0000H0000H::0FFFH0FFFH1000H:FFFFH2.使用访问程序存储器的专用指令MOVC以产生PSEN信号,片外程序存储器读选通信号输出端功能:外ROM读取控制EPROM片外程序存储器OE80318051PSEN指令或常数OE:OutputEnable到此,已经从原则上解决了程序存储器的编址和访问的问题。3.特殊单元区在存储器中有6个重要的、供特殊使用的存储单元区P42表2-40000~0002H复位区0003~000AH外

3、中断0地址区(INT0区)000B~0012H定时器/计数器0中断地址区(T/C0区)0013~001AH外中断1地址区(INT1区)001B~0022H定时器/计数器1中断地址区(T/C1区)0023~002AH串行中断地址区六个重要的首地址特殊单元区干什么用?为什么这么重要?1)0000H与开始执行程序有关复位后,PC=0000H,可以从这里开始执行程序或存放一条转移指令,可以从存储器中任何地方开始执行程序(第一章、第二节)2)0003H~0023H:5个与中断有关的入口地址*51如何寻找中断服务程序的入口地址?采用一种简单的寻找入口地址的方法:“固定第一跳”片内数据存储器(低128位

4、)内RAM时钟电路片内程序存储器内ROMT0T12x16位定时器/计数器特殊功能寄存器(高128位)CPU中断系统串行接口并行接口T/C0串口内中断源外中断源T/C1P0P1P2P3TXDRXDINT0INT1**当CPU响应了INT0的中断请求,CPU无论在何处执行程序,都将跳向0003H,第一跳:0003H**…定时器/计数器0…第一跳:000BH**…INT1….第一跳:0013H**…定时器/计数器1…第一跳:001BH**…串口…第一跳:0023H*每个区只有8个单元,通常只存放一条转移指令,真正的中断服务程序是存放在ROM的其它区域。例:主程序从8000H开始存放,INT0的中

5、断服务程序从9000H开始存放。ORG0000HLJMPMAIN;转入主程序ORG0003HLJMPISR;转入INT0的中断服务程序INT0ORG8000H;主程序MAIN::ORG9000H;INT0的中断服务程序ISR::ROM0000H02*开机——0000H——主程*如果响应INT0中断——第一跳0003H——然后进入INT0的中断服务程序9000H0001H800002H000003H020004H900005H00::主程序8000H::中断服务程序9000H三、数据存储器1.编址与访问*编址三大部分:片内数据存储(低128字节)特殊功能寄存器SFR(高128字节)64K外R

6、AM内RAM外RAM低128256字节与内RAM编址重复00H0000H7FH高128SFR80H64K地址与ROM编址重复FFH00FFHSFRSpecialFunctionRegisterFFFFH解决编址重复的问题*访问:内MOV指令外MOVX指令存储器系统的关系及区分示意图内部外部MOV指令MOVX指令RDWR选通RAMMOVC指令EA=1MOVC指令PSEN选通EA=0ROM**选通的含义外RAM读/写选通外RAMOEWE8031RDWRPSEN外ROM读选通OE外ROM尽管外RAM、ROM地址编号重叠,但是通过使用不同的控制信号即可区分。2.片内数据存储区(内RAM低128)三

7、区:工作寄存器区、位寻址区、数据缓冲区。见P50图2-81)工作寄存器区(00~1FH)供用户直接使用的通用寄存器,与编程关系密切。当前工作寄存器组的选用:(课件第二章1)例:把数据28H送入1组R0中确定1组为当前寄存器组CLRPSW.4;RS1=0SETBPSW.3;RS0=1MOVR0,#28H;送入1组R0CLRClearbit(对某一位清0)SETBSETBit(把某一为置1)2)位寻址区字节地址20H~2FH

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。