arduino if嵌套不执行前置判断-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1437|回复: 3

[已解决] arduino if嵌套不执行前置判断

[复制链接]
发表于 2021-11-13 22:19 | 显示全部楼层 |阅读模式


如图所示,下载后程序会直接执行红圈里的内容
不会对if (digitalRead(welcome_in)==1)判断后再执行if (passflag == 1)
而是直接运行了trun(200,1)和passflag =0这两个语句
而且上一句digitalWrite(welcome_out,LOW)不会执行
其中passflag是在loop和setup外定义的全局变量,初始值为1,图中程序所在位置为loop中,求解!
P9T38354@3}{]C8(5N3NL7F.png
发表于 2021-11-13 23:24 | 显示全部楼层
执行了,digitalRead(welcome_in)==1 为真, 所以继续运行下面的内容了。
你已经input了,你在output是没用的。正确的做法是给该引脚连接一个上拉或者下拉电阻。
什么是上下拉电阻,可以看社区教程:
https://www.arduino.cn/thread-74478-1-1.html
 楼主| 发表于 2021-11-14 22:34 | 显示全部楼层
奈何col 发表于 2021-11-13 23:24
执行了,digitalRead(welcome_in)==1 为真, 所以继续运行下面的内容了。
你已经input了,你在output是没用 ...

两个口一个是welcome_in 一个是welcome_out是不同的,其实是我接电脑的劣质usb hub漏电导致跳电平。。。。今天换了个供电解决了还是谢谢您!

点评

请看看我发的教程,不是啥电源问题,需要上拉或者下拉,这是必须的  详情 回复 发表于 2021-11-14 23:19
发表于 2021-11-14 23:19 | 显示全部楼层
365695792 发表于 2021-11-14 22:34
两个口一个是welcome_in 一个是welcome_out是不同的,其实是我接电脑的劣质usb hub漏电导致跳电平。。。 ...

请看看我发的教程,不是啥电源问题,需要上拉或者下拉,这是必须的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 21:44 , Processed in 0.090811 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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