7
3390c–micro–7/05
at89s2051/s4051
8. restrictions 在 确实 说明
这 at89s2051/s4051 是 一个 economical 和 费用-有效的 成员 的 atmel’s 家族 的 微观的-
控制者. 它 包含 2k/4k 字节 的 flash program 记忆. 它 是 全部地 兼容 和 这
mcs-51 architecture, 和 能 是 编写程序 使用 这 mcs-51 操作指南 设置. however,
那里 是 一个 few 仔细考虑 一个 必须 保持 在 mind 当 utilizing 确实 说明 至 pro-
gram 这个 设备.
所有 这 说明 related 至 jumping 或者 branching 应当 是 restricted 此类 那 这 destination
地址 falls 在里面 这 物理的 程序 记忆 空间 的 这 设备, 这个 是 2k/4k 为 这
at89s2051/s4051. 这个 应当 是 这 责任 的 这 软件 programmer. 为 例子,
ljmp 7e0h 将 是 一个 有效的 操作指南 为 这 at89s2051 (和 2k 的 记忆), whereas ljmp
900h 将 不.
8.1 branching 说明
lcall, ljmp, acall, ajmp, sjmp, jmp @a+dptr.
这些 unconditional branching
说明 将 execute correctly 作 长 作 这 programmer keeps 在 mind 那 这 destination
branching 地址 必须 下降 在里面 这 物理的 boundaries 的 这 程序 记忆 大小 (loca-
tions 00h 至 7ffh/fffh 为 这 at89s2051/s4051). violating 这 物理的 空间 限制 将
导致 unknown 程序 行为.
cjne [...], djnz [...], jb, jnb, jc, jnc, jbc, jz, jnz.
和 这些 conditional branching
说明, 这 一样 rule 在之上 应用. 又一次, violating 这 记忆 boundaries 将 导致
erratic 执行.
为 产品 involving 中断, 这 正常的 中断 维护 routine 地址 locations 的 这
80c51 家族 architecture 有 被 preserved.
8.2 movx-related 说明, 数据 记忆
这 at89s2051/s4051 包含 256 字节 的 内部的 数据 记忆. 外部 数据 记忆
进入 是 不 supported 在 这个 设备, 也不 是 外部 程序 记忆 执行. 因此,
非 movx [...] 说明 应当 是 包含 在 这 程序.
一个 典型 80c51 assembler 将 安静的 组装 说明, 甚至 如果 它们 是 写 在 violation 的
这 restrictions 提到 在之上. 它 是 这 责任 的 这 用户 至 know 这 物理的 特性
和 限制 的 这 设备 正在 使用 和 调整 这 说明 使用 accordingly.
9. 程序 记忆 锁 位
在 这 碎片 是 二 锁 位 这个 能 是 left unprogrammed (u) 或者 能 是 编写程序 (p) 至
获得 这 额外的 特性 列表 在表格 9-1:
便条: 1. 这 锁 位 能 仅有的 是 erased 和 这 碎片 擦掉 运作.
表格 9-1.
锁 位 保护 模式
(1)
程序 锁 位
LB1 LB2 保护 类型
1 U U 非 程序 锁 特性.
2 P U 更远 程序编制 的 这 flash 是 无能.
3 P P 一样 作 模式 2, 也 核实 是 无能.