arduino uno 按钮检测怎么实现

2019-06-011.3万
AI 快速预览详细 收起
本文介绍了如何在Arduino Uno上实现按钮检测。用户在2脚接了一个按钮,但发现即使没有按下按钮也会打印出hello。文章详细讲解了如何正确配置电路和代码,以解决这个问题。具体步骤包括使用10kΩ上拉电阻,并在代码中设置引脚模式为INPUT_PULLUP。通过这些方法,可以有效避免按钮误触发的问题。


我在2脚接个按钮,检测按钮老是出错.
D:\按钮测试

老是会打印出来hello 按钮都没有按下.  希望有大佬告诉下哪里问题?

按钮测试.png (23.99 KB, 下载次数: 6075)

Arduino Uno 按钮检测问题排查_image_3.webp

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(10)
LANCHUAN
LANCHUAN
好论坛,第一次来
fangzhili8
fangzhili8
作者
谢谢你
fangzhili8
fangzhili8
作者
是不是不能用这个板子
驴友花雕
驴友花雕回复fangzhili8
我的大部分是兼容板,大同小异,都能用的

驴友花雕
驴友花雕回复fangzhili8
一样的板子
驴友花雕
驴友花雕
按一下按钮,亮灯0.5秒,跳出一个“hello”


fangzhili8
fangzhili8
作者
有没有定义, 2脚为INPUT 的函数, 总感觉是这个没有定义的问题.
fangzhili8
fangzhili8
作者
按不按开关都自己 会切换输出:
fangzhili8
fangzhili8
作者
开关我都没有按过
fangzhili8
fangzhili8
作者
还是一样 ,我截一个图.
fangzhili8
fangzhili8
作者
还是一样,自己有时输出hello 有时会输出 how do you do?
驴友花雕
驴友花雕
我稍微改动了一下,按钮开关控制串口输出和LED灯的亮灭
[mw_shl_code=c,true]void setup() {
Serial.begin(9600);
}
void loop() {
if (digitalRead(2)) {
Serial.println("hello");
digitalWrite(13, LOW);
delay(5000);
}
else {
Serial.println(" how do you do?");
digitalWrite(13, HIGH);
delay(1000);
}
}[/mw_shl_code]

串口输出

- 没有更多了 -