
初步的技术数据
ADuC844
7FH
MEMORY7组织架构
在ADuC844包含4个不同的存储器块,即:
- 片内闪速/电擦除程序存储器的62kBytes
- 片内闪速/电擦除数据存储器的4K字节
- 256字节的通用RAM
- 内部的XRAM 2k字节
( 1 )闪速/电擦除程序存储器
该ADuC844提供的闪速/电擦除程序存储器62kBytes到
运行用户代码。用户可以选择从这个内部运行代码
内存或运行代码从外部程序存储器。
如果用户施加电源或复位器件,而
EA
引脚
拉低外,该部分将来自外部执行代码
程序空间,否则,如果
EA
被拉高外部零件
默认为代码执行其内部闪存/ EE的62kBytes
程序存储器。该ADuC844不支持从侧翻
F7FFH在内部代码空间F800H外部代码空间。代替
F800H FFFFH的2048个字节将显示为NOP
指令到用户代码。
永久性嵌入式固件允许代码进行串行
通过UART下载到内部代码空间的62kBytes
串行端口,而该设备在电路内。无需外部硬件
所需。
程序存储器的56kBytes可以在被repogrammed
运行时因此代码空间可以在现场使用升级
用户定义的协议,或者它可被用作一个数据存储器。这将是
更详细的的Flash / EE存储器节讨论
数据表。
( 2 )闪速/电擦除数据存储器
提供给用户的Flash / EE数据存储器的4K字节,并能
可以通过一组寄存器映射到间接访问
特殊功能寄存器( SFR )区。进入到Flash / EE数据
内存在后面详细的Flash / EE存储器的一部分讨论
本数据表部分。
( 3 )通用RAM
的通用RAM被分成两个独立的存储器,
即上部和下部128字节RAM 。低128
字节的RAM可通过直接或间接寻址访问
而高128字节RAM只能通过访问
间接寻址,因为它共享相同的地址空间作为SFR
空间,只能通过直接寻址访问。
低128字节的内部数据存储器映射如图
图2.最低的32个字节被分成四个由八个
通过寄存器R7地址为R0 。在接下来的16字节(128位) ,
地点20HEX通过2FHex上面的寄存器组,形成一个
的位地址00H直接寻址位的位置块
通过7FH 。栈可以在内部被定位在任何地方
存储器地址空间,且堆栈深度可以扩展到
2048字节。
复位初始化堆栈指针位置的07进制。任何通话或推
预加载递增堆栈前的SP 。因此加载
堆栈从位置开始08 (十六进制) ,这也是第一个寄存器(R 0)
的寄存器组1,因此,如果一个是要使用一个以上的寄存器
银行,堆栈指针应被初始化为RAM的区域不
用于数据存储。
通用
区域
30H
2FH
银行
选
通过
在PSW BITS
11
18H
17H
10
10H
0FH
01
08H
07H
00
00H
复位值
堆栈指针
八种四家银行
注册
R0 R7
20H
1FH
位寻址
(位地址)
图2.低128字节的内部数据存储器
( 4 )内部XRAM
在ADuC844包含片上扩展数据存储器2k字节。
此存储器虽然片上通过MOVX访问
指令。内部XRAM的2k字节被映射到
外部地址空间的底部2k字节,如果CFG844.0位
设置;否则,访问外部数据存储器将发生一样
一个标准的8051 。
甚至与CFG844.0位设置访问外部XRAM将
一旦出现24位DPTR大于0007FFH 。
为FFFFFFh
为FFFFFFh
外
数据
内存
空间
(24-BIT
地址
空间)
外
数据
内存
空间
(24-BIT
地址
空间)
000800H
0007F FH
2字节S
片上
XRAM
000000H
CFG845.0=0
000000 H
CFG845.0=1
图3 :内部和外部XRAM
当访问内部XRAM的P0 , P2口引脚以及
RD和WR信号不会按照标准输出8051
MOVX指令。这允许用户使用这些端口引脚为
标准I / O 。
上部1792字节的内部的XRAM可以被配置为
作为一个扩展的11位堆栈指针。
默认情况下,堆栈将完全一样的8052在操作它会
从FFH翻转至00h ,在通用RAM 。对
ADuC844但是也可以(通过设置CFG844.7 ),以使
11位的扩展堆栈指针。在这种情况下,协议栈将翻转从
FFH的RAM以0100H在XRAM 。
REV 。 PRB
-13-