找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7087|回复: 8
打印 上一主题 下一主题
收起左侧

单片机独立按键的程序问题,while(!k)是什么意思

[复制链接]
跳转到指定楼层
楼主
ID:524891 发表于 2019-5-7 18:12 来自手机 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
这个while(!k)是什么意思额,为什么我松开k为0!k为1了,他状态还是保持原来的,如果我把while去掉他要一直按着才能保持原来的状态。不是松开了就不进入k等于0这个语句了吗,保持原来状态了吗,那为什么去掉就不同原来状态了。

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

095629wqll5s5lizo5vgvj.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:213173 发表于 2019-5-8 07:30 | 只看该作者
软件是基于硬件环境运行的,这个按键程序是在按下后IO口为0,松手后为1的条件下才能正常工作的。while(!k)括号内容是判断K为1是假,跳出死循环。
回复

使用道具 举报

板凳
ID:516612 发表于 2021-1-22 20:21 | 只看该作者

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

使用道具 举报

地板
ID:752974 发表于 2021-1-23 09:14 | 只看该作者
这个while(!k)是等待按键释放,如果不放手一直在死等。这是教课书里的东西,效率低,看看这http://www.51hei.com/bbs/dpj-201799-1.html
回复

使用道具 举报

5#
ID:880092 发表于 2021-1-24 19:34 | 只看该作者
当K1取反,是等待按键释放,如果不放手一直在死等。
回复

使用道具 举报

6#
ID:517951 发表于 2021-1-25 09:07 | 只看该作者
while(!k) 就是K=0的时候一直循环,直到k=1时候推出循环。
回复

使用道具 举报

7#
ID:722618 发表于 2021-1-25 11:27 | 只看该作者
这个while(!k)是等待按键释放,就是判断按键是否释放。
回复

使用道具 举报

8#
ID:847443 发表于 2021-1-25 16:30 | 只看该作者
就是检测按键是否松开的意思。
回复

使用道具 举报

9#
ID:879794 发表于 2021-1-25 21:54 | 只看该作者
监测按键是否松开,松手后为1的条件下才能正常工作的。while(!k)括号内容是判断K为1是假,跳出死循环。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表