提问:动态显示,请问为什么按下第二次按钮时关不掉啊.
网友回答:
程序逻辑上没有大问题,唯一的问题是,你的h没有初始化,它可能是个随机数,这样程序结果就有问题了
而你真正的问题是,当h=1时,
for(j=0;j<50;j++)
for(i=0;i<6;i++)
加delay(10); 循环时间过长,导致你按下s1没反应而
P1=0xff;
P2=0xff;
时间太短,按下一次s1就可以认为为两次了,又回h=1
我在它下面加了
delay(5000);
然后要快速按下s1,基本就能成功了
这种单按键触发不是很可靠(实际电路还要考虑抖动),建议用常闭开关,就不会有问题了