wulin 发表于 2019-9-19 09:28 非常感谢您的热心指点,不过您是让它第二个按键按下去亮0xf7,我是想利用标志位让它松手的时候亮0xf7。谢谢。 |
H方与圆H 发表于 2019-9-18 21:34 楼主去掉所有多余语句加标志复位就行了
|
hantu 发表于 2019-9-18 09:31 上传压缩包?我没注意到在哪儿上传呀? |
tyrl800 发表于 2019-9-18 11:01 谢谢指点,但是我现在将标志位复位,依然有问题。 void bc() { if(b==0) //检测标志位值 { P1=0xfe; if(P1==0xfe) //检测LED状态 { b=1; //标志位复位 } } if(c==0) //检测标志位值 { P1=0xf7; if(P1==0xf7) //检测LED状态 { c=1; //标志位复位 } } } 我改成这样之后,开始没问题,当我按下按键无任何反应变化,松开按键直接点亮0xf7然后常亮。不论怎么按按键都无任何反应变化。 中间按下按键这部分看上去是被跳过了,但是我用直接给P1口赋值和把C屏蔽掉测试发现这部分并没被跳过。但是仿真实际表现是跳过了。 |
你这程序,标志位都没有复位,当然有问题 |
把文件全打包了发上来呀,包括仿真文件和项目文件、源码。 |