weixin_51040857 2022-07-11 10:53 采纳率: 50%
浏览 243
已结题

XBYTE【0XE000】什么意思,在51单片机中

这个XBYTE【0XE000】是控制什么的,具体是什么意思,和P0是什么关系

img

  • 写回答

2条回答 默认 最新

  • 泡沫o0 2023年度博客之星上海赛道TOP 1 2022-07-11 11:05
    关注
    获得1.10元问题酬金

    XBYTE是一个地址指针(可当成一个数组名或数组的首地址),它在文件absacc.h中由系统定义,指向外部RAM(包括I/O口)的0000H单元,
    XBYTE后面的中括号[ ]0xE000H是指数组首地址E000H的偏移地址,即用XBYTE[0xE000]可访问偏移地址为0xE000的I/O端口。

    这个主要是在用C51的P0,P2口做外部扩展时使用,其中XBYTE [0xE000],P2口对应于地址高位,P0口对应于地址低位。
    一般P2口用于控制信号,P0口作为数据通道。

    比如:P2.7接WR,P2.6接RD,P2.5接CS,那么就可以确定个外部RAM的一个地址,想往外部RAM的一个地址写一个字节时,地址可以定为XBYTE [0x4000],其中WR,CS为低,RD为高,那就是高位的4,当然其余的可以根据情况自己定,然后通过

    XBYTE [0x4000] = 57;

    这赋值语句,就可以把57写到外部RAM的0x4000处了,此地址对应一个字节。

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 7月19日
  • 创建了问题 7月11日