文档介绍:总第 1’卷第&1% 期电测与仪表 Y@=#1’ Z@#&1%
"$$" 年第 1 期[=:F?;6F9= (:97H;:D:<? \ ]<7?;HD:<?9?6@< (9;# "$$"
!"#$%& 单片机地址指针及其应用
王幸之!,王雷!,钟爱琴"
(!#河北科技大学电气信息学院,石家庄$%$$%&;"#河北中意玻璃钢有限公司,石家庄$%$$’!)
摘要:详细分析了()*+%! 单片机外部数据存储器访问的机理,提出用,-./、/$、/! 作
为读 0 写外部数据存储器地址指针的方法及注意事项。
关键词:单片机;地址指针;时序图
中图分类号:.(’11,.-"2& 文献标识码:3 文章编号:!$$!+!1’$("$$")$1+$$&4+$1
45/ ,33+/)) 6278*/+ 29 !"#$%& )78:;/$-576
<7-+2-2<6=*/+ ,83 7*) ,66;7-,*78
L9<G M6<GN56!,L9<G O:6!,N5@<G P6K6<"
(!#Q:R:6 S<6T:;76?> ***@A *F6:<F: 9<C .:F5@<@=***@G>,*56U69E5H9<G $%$$%&,)56<9;
"#Q:R:6 N5@<G>6 VW/- )X# O.,I,*56U69E5H9<G $%$$’!,)56<9)
’()*+,-*:.567 898:; 9<9=>7:7 ?5: ?5:@;> ***@A ?5: :B?:;<9= C9?9 D:D@;6E:; 9FF:77 ***@A ()*+
%! 76<G=:+F568 D6F;***@******@D8H?:;I 8H?7 A@;J9;C ?@ ?5: D:?******@C 9<C <@?6F: ***@A 9FF:776<G ?5:
:B?:;<9= C9?9 D:D@;6E:; J6?5 ,-./I /$I /!#
./0 12+3):76<G=:+F568 D6F;***@******@D8H?:;;9CC;:77 ******@6<?:;;?6D: 7:KH:<F: C69G;9D
@ 引言点,才能正确理解和使用对外/P( 的传送指令。
()*+%! 单片机对外部数据存储器(外/P() ()*+%! 单片机-$ 口、-" 口结构分别如图!、
的访问使用唯一(XYM 指令,且以,-./、/$、/! 图" 所示。
三个寄存器作为地址指针。因此,深入了解数据传
输的过程,合理使用地址指针,对提高程序设计的
可靠性和运行效率具有重要意义。
& 外部数据存储器的访问过程
()*+%! 单片机外部/P( 的地址空间为^&_,
地址总线!^ 位,访问外/P( 可执行如下& 条指
令:
(XYM P,‘,-./
(XYM ‘,-./,P
(XYM P,‘/6
(XYM ‘/6,P
其中,-./ 为!^ 位地址寄存器,地址高 4 位存
于,-Q,地址低 4 位存于,-O;/6(6a$,!)是 4 位寄
存器,作为地址指针时仅存低 4 位地址。
()*+%! 执行上述指令时分为两个阶段:首先
从外程序存储器中取出指令代码并进行分析;然后
执行对外/P( 的数据读 0 写操作。在这两个阶段,
-$ 口、-! 口上的地址选通是有区别的,了解这一