KDAT = 1 ; /*释放数据总线*/<br /> KEY = 0 ; /* 变量赋 0,没必要!!! */<br /> KLOAD = 0 ;/*锁存按键状态*/<br /> KLOAD = 1 ;<br /> DO N = 0 TO 7 ;/*移动8位串行数据*/<br /> KEY = ROL ( KEY , 1 ) ;/*字节左移,应该先移动!!!*/<br /> KCLK = 0 ;/*时钟变低,在下降沿要读数据*/<br /> IF KDAT = 0 THEN KEY = KEY OR 01H ;/*此时才能读口状态,有键为1*/<br /> KCLK = 1 ;/*时钟变高,此时内部数据才开始移动*/<br /> END ;<br />
|