头文件 absacc.h 中 XBYTE 的用法
时间:10-02
整理:3721RD
点击:
/***********************自定义头文件*************************/
#ifndef _led_pwm_h_
#define _led_pwm_h_
#include <reg52.h>
#include <absacc.h>
#define uint unsigned int
#define uchar unsigned char
extern uchar gongzuo,gongzuo_time1;
extern bit gongzuo_ji;
void led_case(void);
#endif
/***************************led********************************/
#include "led_pwm.h"
void led_case(void)
{
if(gongzuo_ji == 1)
{
if(gongzuo == 1)
{
XBYTE[0X8000] = 0XFE;
}
if(gongzuo == 2)
{
XBYTE[0X8000] = 0XFD;
}
if(gongzuo == 3)
{
XBYTE[0X8000] = 0XFB;
}
}
else
{
XBYTE[0X8000] = 0XFF;
}
}
请问这里的XBYTE[0x8000] 什么意思?
#ifndef _led_pwm_h_
#define _led_pwm_h_
#include <reg52.h>
#include <absacc.h>
#define uint unsigned int
#define uchar unsigned char
extern uchar gongzuo,gongzuo_time1;
extern bit gongzuo_ji;
void led_case(void);
#endif
/***************************led********************************/
#include "led_pwm.h"
void led_case(void)
{
if(gongzuo_ji == 1)
{
if(gongzuo == 1)
{
XBYTE[0X8000] = 0XFE;
}
if(gongzuo == 2)
{
XBYTE[0X8000] = 0XFD;
}
if(gongzuo == 3)
{
XBYTE[0X8000] = 0XFB;
}
}
else
{
XBYTE[0X8000] = 0XFF;
}
}
请问这里的XBYTE[0x8000] 什么意思?
这个对应汇编程序的读取外部地址为0x8000的数据。
沙发正解,这个东西一般用于控制一些8086总线协议的器件,例如8255/8253。中括号里的双字节数代表外部地址,低八位由P0输出,高八位由P2输出,对其所赋的值就是向该地址对应设备的数据总线写入数据信息。此外对于XBYTE的具体使用还要配合P36/P37两个引脚甚至译码器完成,如果小编没有学过8086的微机原理的话就不要深究了,这个现在用得不多。
还请大神解释下
var2=XWOR[0X0002]是访问片外RAM的0002字单元还是0004?
这个不是很了解 等大神解答