你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

奇葩问题,来围观,帮我找错....

[复制链接]
wofei1314 提问时间:2015-10-27 18:10 /
阅读主题, 点击返回1楼
收藏 1 评论39 发布时间:2015-10-27 18:10
39个回答
wofei1314 回答时间:2015-10-30 16:29:20
windsky-2021230 发表于 2015-10-30 14:23
或者这样写试下:

        if(ExButton1())   

这试过了,调试模式,GPIOE12读回来一直是1,硬件外面接下拉读回来也还是1
zhoupxa 回答时间:2015-11-2 10:09:11
wofei1314 发表于 2015-10-30 16:28
是的,GPIOE 14采集完全正确,GPIOE 12读就一直为1,正确应该为0....

主要是在同样的板子上,同样的按钮 ...

两块板子上程序不同,可能是程序问题
但是也不排除硬件问题啊
wofei1314 回答时间:2015-11-2 17:44:03
zhoupxa 发表于 2015-11-2 10:09
两块板子上程序不同,可能是程序问题
但是也不排除硬件问题啊

是同样的硬件,两个程序。。。。
hjl2832 回答时间:2015-11-3 16:27:40
楼主还没明白意思,大伙说的是你第二种写法里,如果第一个条件(PE14)成立,就没有检测第2个条件了,因为它会直接进入条件里面的子程序了。所以这时候你能看到执行了开门操作。实际调试时,你的第1种写法才真正发现了问题。实际是你的PE12本来就是读的高电平。
你要把PE14人为设为高电平,再去调试第2种,看看问题吧。
wofei1314 回答时间:2015-11-4 09:44:19
本帖最后由 wofei1314 于 2015-11-4 09:46 编辑
hjl2832 发表于 2015-11-3 16:27
楼主还没明白意思,大伙说的是你第二种写法里,如果第一个条件(PE14)成立,就没有检测第2个条件了,因为 ...

首先感谢你的回答,其次可能是我表达方式不好....

if(条件1或者条件2)这种,实际运行的时候,不管是条件1触发还是条件2触发,都能通过寄存器看出来!!!另外,条件2就是PE12这个IO口,你的意思是PE12接地后,PE12读回的还是高电平,是PE14变低了所以这个判断才成立,门开了??
PE14和PE12都是有上拉的,不需要调,读回的就应该是高电平,只有按键按下了,读回的才是低电平好吗,PE14和PE12是两个独立的IO,硬件上接的是两个独立按键的,这样的表述是不是就明白了?
jiaswang 回答时间:2015-11-4 16:17:19
wofei1314 发表于 2015-10-30 09:33
不可以分开判断吗?
if(条件1)
{

我的意思是if 和else配套使用,不要漏掉……
wofei1314 回答时间:2015-11-5 09:53:14
jiaswang 发表于 2015-11-4 16:17
我的意思是if 和else配套使用,不要漏掉……

if和else不可以分开么?我记得我以前都是分开的啊,不过我没试过
if(条件)
  函数1;
else
  ;

else后面为空
jiaswang 回答时间:2015-11-9 09:16:01
wofei1314 发表于 2015-11-5 09:53
if和else不可以分开么?我记得我以前都是分开的啊,不过我没试过
if(条件)
  函数1;

应该也可以,个人习惯,标准用法是配对使用
peter001 回答时间:2015-11-9 09:22:09
引脚短路了没有
wofei1314 回答时间:2015-11-9 09:36:59

同样的硬件....
123

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版