单片机问题:74HC573(一个8D锁存器),使用总线读端口,总是读不到……

电路很简单,锁存器前端连到按键上,用来读取按键状态(这个可以吗?)
锁存器后端接到总线P0上
锁存器使能用\RD和地址线A15(P2.7)控制
程序更简单,主要语句就是:
#define aaa XBYTE[0x0000] //573的地址
void main(void)
{
uchar temp;
while(1)
{
temp=aaa;
temp|=0xF8;
P0=temp;
DelayMS(1000);
}
}
我在Keil的WATCH里看了,temp始终是0x00,根本就没有读进去。
请问我这样读取74HC573 Q端是正确的吗?搞了一下午怎么都出不来,郁闷~

你74HC573的电路有问题
OE 为 低电平时 LE为高电平时 输入输出才有作用
你去看下datasheet追问

没有错啊,LE我让它保持高电平,OE平时是高电平,读取的时候\RD和A15变为低电平,“或”之后\OE就是低电平啊。对吗?

追答

恩 是的
你直接让OE为低电平先试试

追问

直接让OE保持使能,可以让信号过去,送到P0口。
但是当我用 temp=XBYTE[0x0000] 时,又读不到了,请问读片外数据该怎么读呢?

追答

不用片外读啊
直接就可以啊

温馨提示:答案为网友推荐,仅供参考
相似回答