找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2752|回复: 12
收起左侧

MCU电路里这些按键有啥作用? if ((k &keycon)!=keycon) 这句代码不理解,求大神

[复制链接]
回帖奖励 10 黑币 回复本帖可获得 10 黑币奖励! 每人限 1 次
ID:895406 发表于 2021-4-2 13:11 | 显示全部楼层 |阅读模式
Scan02_0001.jpg Scan02_0002.jpg Scan02_0003.jpg
  问题:想知道这些按键有啥作用?
   if ((k &keycon)!=keycon)  这句话是什么意思?
   keycon 是啥意思?
求大神告知,谢谢!
回复

使用道具 举报

ID:885092 发表于 2021-4-2 16:06 | 显示全部楼层
就是k和keycon有至少一位不一致

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:885092 发表于 2021-4-2 16:07 | 显示全部楼层
就是k和keycon至少有一位不一致,keycon开头就被define完了,估计是键盘扫描的意思

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:885092 发表于 2021-4-2 16:09 | 显示全部楼层
问题一:这句话意思是:k和keycon至少有一位不相同
问题二:keycon在开头被define了,意思是键盘扫描吧!!!

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:895406 发表于 2021-4-2 16:32 | 显示全部楼层
zhouwenhua1998 发表于 2021-4-2 16:09
问题一:这句话意思是:k和keycon至少有一位不相同
问题二:keycon在开头被define了,意思是键盘扫描吧!!!

嗯,谢谢,大神程序看得懂吗?
回复

使用道具 举报

ID:746422 发表于 2021-4-2 23:07 | 显示全部楼层
if ((k &keycon)!=keycon)  的意思是,判断 k 这个寄存器 &上keycon这个寄存器的结果不等于keycon这个寄存器的值,这条语句就为真。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:895406 发表于 2021-4-4 22:35 来自手机 | 显示全部楼层
一生最爱 发表于 2021-4-2 23:07
if ((k &keycon)!=keycon)  的意思是,判断 k 这个寄存器 &上keycon这个寄存器的结果不等于keycon这个寄存 ...

你好大神,帮我看下本题第七问,KEY6~KEY8闭合,此时是讲13  14  15 位置为0吗?之后断开KEY8是将第15位置为1,是不是这个意思?还请大神多多指教,谢谢!
回复

使用道具 举报

ID:844772 发表于 2021-4-5 10:33 | 显示全部楼层
永恒动力 发表于 2021-4-4 22:35
你好大神,帮我看下本题第七问,KEY6~KEY8闭合,此时是讲13  14  15 位置为0吗?之后断开KEY8是将第15位 ...

按下的是0断开是1,不过经过取反后,switch判断的是1,由于没有判断多按键值,所以同时按多个键无动作。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:901055 发表于 2021-4-5 22:12 | 显示全部楼层
k和keycon有一位不一致则为真,否则为假

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:894154 发表于 2021-4-6 08:03 | 显示全部楼层
检测IO0PIN上引脚的电平变化
回复

使用道具 举报

ID:895406 发表于 2021-4-6 08:48 | 显示全部楼层
glinfei 发表于 2021-4-5 10:33
按下的是0断开是1,不过经过取反后,switch判断的是1,由于没有判断多按键值,所以同时按多个键无动作。
...

懂了,非常感谢!
回复

使用道具 举报

ID:517951 发表于 2021-4-6 09:17 | 显示全部楼层
if ((k &keycon)!=keycon)  是判读K的第8位到15位有没任意一个位被拉低.
回复

使用道具 举报

ID:744327 发表于 2021-4-6 09:34 | 显示全部楼层
if ((k &keycon)!=keycon)  的意思是, k 值与上keycon这个值的结果不等于keycon这个寄存器的值,如果为真就执行下面的语句。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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