极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8614|回复: 3

我想问一下这是怎么回事,是板子问题吗?

[复制链接]
发表于 2013-5-14 15:13:40 | 显示全部楼层 |阅读模式

我想问一下这是怎么回事,是板子问题吗?

我是一个新手,所以我就简单做了下测试程序

有一个开关,一头连5V,另一头连 A5 口。

下面是很简单的代码

int analogValue = 0;
int switchPIN=A5;


void setup() {
         pinMode(switchPIN,INPUT);
         
         Serial.begin(9600);
         Serial.println("Hello,PL");
}

void loop() {
         
         analogValue = analogRead(switchPIN);
         Serial.println(analogValue);
         
}



当我按下开关时,没问题,会显示 1023

但当没有按下时,按理说应该都是0呀。

但我在窗口显示的是下面的数据

0
20
1023
0
0
0
16
1023
0
0
0
4
1023
428
0....
...
..

为什么是这样的数据呀,我没按开关,怎么会有1023,不是都应该是0吗.

回复

使用道具 举报

发表于 2013-5-14 15:55:54 | 显示全部楼层
本帖最后由 zcbzjx 于 2013-5-14 19:00 编辑

你测试下,接地是不是都是0 接3v3是不是都是700多,接vcc是不是都是1023,如果这些都没问题,就是正常的,你没有按下这个管脚没接东西,会波动的,不过我测试一般会有一个值,既不是1023也不是0。另外小心别把端口烧了。

另外建议这种的话接个下拉电阻就行了:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2013-5-14 18:33:30 | 显示全部楼层
正常的喔! !因为机械式开关都会有弹跳的现象
只是一些小杂讯,可以透过防弹跳的程式忽略那些数值~
EX: http://arduino.cc/en/Tutorial/Debounce
回复 支持 反对

使用道具 举报

发表于 2013-5-14 22:37:30 | 显示全部楼层
就是下了个电阻就OK了,按钮没有按下时接地,按下时就是所接电压值
回复 支持 反对

使用道具 举报

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

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-5-20 12:20 , Processed in 0.043077 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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