文章目录
一、上拉电阻电路
二、下拉电阻电路
二、按键模块在Arduino中的使用
如上图为上拉电阻电路的按键原理,VCC及GND分别为正负极,PIN接信号端口;
此时可实现的功能为:
按键未按下时PIN接收高电平信号,状态为1;
按键按下后接收低电平信号,状态为0;
如果没有上拉,则PIN出于悬空状态,则接收到的信号0、1跳变。
如上图为下拉电阻电路的按键原理,VCC及GND分别为正负极,PIN接信号端口;
此时可实现的功能为:
按键未按下时PIN接收低电平信号,状态为0;
按键按下后接收高电平信号,状态为1;
如果没有下拉,则PIN出于悬空状态,则接收到的信号0、1跳变。
此时将按键按照线序与Arduino Uno板连接(不同的按键模块针脚的顺序或标识可能不一样,正负极对应连接,剩下的针脚即位信号针脚),信号针脚连接到4号数字端口。
完成下述程序来验证此模块为上拉电阻电路还是下拉电阻电路:
void setup()
{
pinMode(4, INPUT); //设置4号端口为输入
Serial.begin(9600); //初始化串口监视器波特率为9600
}
void loop()
{
Serial.println(digitalRead(4)); //通过串口监视器输出4号端口信号值
}
将上述程序上传至Arduino板,并打开串口监视器:
通过操作观察可得知本文使用的按键模块在按下时信号为1,松开后信号为0;因此为下拉电阻电路。
此时将GND连线拔掉,再次观察串口监视器,呈现以下现象:
发现数值在无规则的0、1跳变,即GND悬空之后无法得到准确的按键状态。
关于按键模块的具体实例可参考文章——Arduino项目式编程教学第三章——红外遥控灯