标题: 单片机独立按键的程序问题,while(!k)是什么意思 [打印本页]

作者: 大黑牛食品    时间: 2019-5-7 18:12
标题: 单片机独立按键的程序问题,while(!k)是什么意思
这个while(!k)是什么意思额,为什么我松开k为0!k为1了,他状态还是保持原来的,如果我把while去掉他要一直按着才能保持原来的状态。不是松开了就不进入k等于0这个语句了吗,保持原来状态了吗,那为什么去掉就不同原来状态了。

095629wqll5s5lizo5vgvj.png (32.1 KB, 下载次数: 50)

095629wqll5s5lizo5vgvj.png

作者: wulin    时间: 2019-5-8 07:30
软件是基于硬件环境运行的,这个按键程序是在按下后IO口为0,松手后为1的条件下才能正常工作的。while(!k)括号内容是判断K为1是假,跳出死循环。
作者: 18674201426    时间: 2021-1-22 20:21

我学的时候也对这里的while不能理解,虽然现在大佬儿肯定早就理解了,为了方便以后和我一样的新手,我贴一下我写的方便以后的新手学习。

作者: munuc_w    时间: 2021-1-23 09:14
这个while(!k)是等待按键释放,如果不放手一直在死等。这是教课书里的东西,效率低,看看这http://www.51hei.com/bbs/dpj-201799-1.html
作者: jyb-zl-1    时间: 2021-1-24 19:34
当K1取反,是等待按键释放,如果不放手一直在死等。
作者: rayin    时间: 2021-1-25 09:07
while(!k) 就是K=0的时候一直循环,直到k=1时候推出循环。
作者: 370894249    时间: 2021-1-25 11:27
这个while(!k)是等待按键释放,就是判断按键是否释放。
作者: jchrui    时间: 2021-1-25 16:30
就是检测按键是否松开的意思。
作者: jybzl    时间: 2021-1-25 21:54
监测按键是否松开,松手后为1的条件下才能正常工作的。while(!k)括号内容是判断K为1是假,跳出死循环。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1