新人问个问题.

[复制链接]
2723|9
 楼主| cooolsky 发表于 2011-4-10 13:33 | 显示全部楼层 |阅读模式
#include <absacc.h>#define PA XBYTE[0xffec]

这两句,XBYTE是以字节形式对xdata区寻址;
书上是这么解释.将PA定义为外部io口,地址为0xffc0,长度为8位.

小弟想问下.0xffec这个地址是怎么来的.随便定义么?还是怎么?哪位大虾可以解释一下...本人刚学.希望语言能够通俗易懂点..不然我也看不懂.十分感谢~!!!!
ningling_21 发表于 2011-4-10 16:23 | 显示全部楼层
一般是芯片资料里定义的...
原野之狼 发表于 2011-4-10 16:50 | 显示全部楼层
先去弄明白两个问题
1、片外总线扩展的原理
2、绝对地址定位
免证入网 发表于 2011-4-10 21:55 | 显示全部楼层
可以随便指定,前提是不能越扩展外存的界。但是一旦指定,以后就永远指向这个地址了
utopiaworld 发表于 2011-4-10 23:51 | 显示全部楼层
片外总线扩展,建议lz可以去了解一下 ,当定义 片外超过 16bit的地址的时候
p0 口和p2 口分别作为 地址总线,然后p0口同时也作为数据总线,然后p0口的地址可以通过
ale的上升沿进行寄存,这样子可以把p0口数据和地址进行分离
exp
MOV    DPTR  #ffec
MOV    A        #data
MOVX @DPTR   A      写
utopiaworld 发表于 2011-4-10 23:54 | 显示全部楼层
ayb_ice 发表于 2011-4-11 08:27 | 显示全部楼层
地址和硬件有关
xlsbz 发表于 2011-4-11 12:19 | 显示全部楼层
首先明白两个问题

第一  有没有必要弄明白这个问题

若没有必要 我看就不要弄了

我看这个东西大部分人都不会  也没用过

还是用别的方式搞 如果必须搞的话
utopiaworld 发表于 2011-4-11 17:01 | 显示全部楼层

搞错了

本帖最后由 utopiaworld 于 2011-4-11 21:47 编辑

..................................
1314wankai 发表于 2011-4-11 21:30 | 显示全部楼层
实际上是给0xffec取名为PA
mov dptr,0xffec
movx a,@dptr
(PA==a)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

27

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部