|
引用 8 楼 peasant_lee 的回复:
不客气,你找到那个datasheet,重点看看,A0,A1两个引脚的作用。当他们取不同值时(四个状态),8255有所变化的。
硬件连线。首先,你的mcu的某一个P口(比如P1口)接到8255的D0-D7。然后用另外一个P口(比如P2口)的某些脚来接8255的几个控制脚(A0,A1,RD,WR,CS)。然后先通过控制这几个控制脚,在适当的时序下,你的P1的数据就有可能从8255的任一并口读进来……
恩,我知道了,可还是不对,请你也请大家帮我看看问题出在哪,我觉得没问题啊
PA口接8只二极管
#include
#include
sbit L1=P2^0; //接8255的A1
sbit L2=P2^1; //接A0
sbit L3=P2^2; //接/RD(低电平有效)
sbit L4=P2^3; //接/WR(低电平有效)
sbit L5=P2^4; //接/CS(低电平有效)
main()
{
L1=1;
L2=1;
L3=1;
L4=0;
L5=0;
P1=0x80; //控制字,选中PA口输出
L1=0;
L2=0;
L3=1;
L4=0;
L5=0;
P1=0xaa; //输出0xaa,二极管(共阴)应该相间亮灭,但全灭(即PA口为0)
while(1);
}
大家多指点啊,谢谢了~~ |
|