[技术问答] 大家都来找BUG,找到有奖噢

[复制链接]
 楼主| niuyaliang 发表于 2014-6-20 18:00 | 显示全部楼层 |阅读模式
本帖最后由 niuyaliang 于 2014-6-22 10:09 编辑

#define                Get_Key_Port()              ((P1&0x7C)>>2)|((P5&0x10)<<1)//扫描所有的按键口        
现在已知Get_Key_Port()读取的一直为0x3F,那么下列语句
  1.    if(Get_Key_Port() == 0x3E)//表明有按键弹起时
  2.                         {
  3.     TX1_write2buff(8);
  4.                         }
请问这条语句TX1_write2buff(8);会不会被执行呢?

ar_m_cu 发表于 2014-6-20 19:50 | 显示全部楼层
必须不能啊,3E和3F
gxliu08 发表于 2014-6-20 22:46 | 显示全部楼层
E和F两个键差的距离挺远,这BUG是人造的吧?
coslight 发表于 2014-6-21 08:07 | 显示全部楼层
硬件没问题,感觉软件没啥问题啊,楼主现在有解了吗
slotg 发表于 2014-6-21 10:30 | 显示全部楼层
当 P1.2 拉低时, 就会被执行
 楼主| niuyaliang 发表于 2014-6-22 10:14 | 显示全部楼层
@ar_m_cu @gxliu08 @coslight @slotg
  1. ((P1&0x7C)>>2)|((P5&0x10)<<1)
由于这句最外层没加大括号,导致一直执行
  1. TX1_write2buff(8)
骗子的片子 发表于 2014-6-22 13:43 来自手机 | 显示全部楼层
你这是故意搞得吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

212

主题

2427

帖子

7

粉丝
快速回复 在线客服 返回列表 返回顶部