|
如题,因为8155只需要低八位地址,P2想留做他用,故想采用普通IO模拟地址总线、ALE、WR等端口方式实现。按照时序图写出程序,但实验失败,在此求助,先谢过啦。代码如下:
#include
#include
sbit AL = P2^0; //ALE
sbit W = P2^2; //WR
//xdata char XPP _at_ 0xff00;
//xdata char XPC _at_ 0xff03;
void main(void)
{
while( 1 )
{
W = 1;
AL = 1;
P0 = 0x00; //8155命令字设置入口地址
AL = 0;
W = 0;
P0 = 0x0C; //写入数据设置PC口输出
W = 1;
_nop_();
_nop_();
W = 1;
AL = 1;
P0 = 0x03; //PC口入口地址
AL = 0;
W = 0;
P0 = 0x00; //写入数据PC口输出0x00
W = 1;
_nop_();
_nop_();
}
}
[ 本帖最后由 moon30000 于 2009-10-12 16:45 编辑 ]
|
|