单片机c语言xbyte定义法,单片机中XBYTE的作用

XBYTE是C51编程中用于访问外部RAM(包括I/O口)的宏定义,它在absacc.h中定义。通过XBYTE[0x地址]可以访问特定地址的I/O端口。例如,XBYTE[0x4000] = 57;将57写入外部RAM的0x4000地址。P2口作为地址高位,P0口作为地址低位,常用于外部扩展。在使用XBYTE时,数据读写时序由CPU自动处理,不需要额外控制WR和RD信号。
摘要由CSDN通过智能技术生成

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

这个主要是在用C51的P0,P2口做外部扩展时使用,其中XBYTE [0x0002],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处了,此地址对应一个字节。

XBYTE 的作用,可以用来定义绝对地址,是P0口和P2口的,其中P2口对应的是高位,P0口对应的是低位

如 XBYTE[0x1234] = 0x56;

则等价于

mov dptr,#1234h

mov @dptr,#56h

XBYTE的使用 收藏

XBYTE

The XBYTE macro accesses individual bytes in the external data memory of the 8051. You may use this macro in your programs as

  • 6
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值