1、第四十课 Arduino 连接开关按钮或开关连接电路中的两个开路端子。当按下连接到引脚 8 的按钮开关时,此示例打开引脚 2 上的 LED。下拉电阻在电子逻辑电路中使用下拉电阻,以确保在外部器件断开连接或处于高阻抗状态时,Arduino 的输入信号达到预期的逻辑电平。虽然没有任何东西连接到输入引脚,但这并不意味着它是一个逻辑 0。下拉电阻连接在地面和器件上相应的引脚之间。下图显示了数字电路中下拉电阻的示例。在电源电压和微控制器引脚之间连接了一个按钮开关。在这样的电路中,当开关闭合时,微控制器输入处于逻辑高值;但是当开关打开时,下拉电阻将输入电压下拉到接地(逻辑零值),防止输入处于未定义状态。下
2、拉电阻的电阻必须大于逻辑电路的阻抗,否则可能会使电压下降太多,而无论开关的位置如何,引脚处的输入电压将保持在恒定的逻辑低值。必需的组件你将需要以下组件: 1 Arduino UNO 板 1 330 欧姆电阻 1 4.7K 欧姆电阻(下拉) 1 LED程序按照电路图进行连接,如下图所示。草图在计算机上打开 Arduino IDE 软件。使用 Arduino 语言进行编码控制你的电路。通过单击“New”打开一个新的草图文件。Arduino 代码/ constants wont change. Theyre used here to/ set pin numbers:const int button
3、Pin = 8; / the number of the pushbutton pinconst int ledPin = 2; / the number of the LED pin/ variables will change:int buttonState = 0; / variable for reading the pushbutton statusvoid setup() / initialize the LED pin as an output:pinMode(ledPin, OUTPUT);/ initialize the pushbutton pin as an input:
4、pinMode(buttonPin, INPUT);void loop() / read the state of the pushbutton value:buttonState = digitalRead(buttonPin);/ check if the pushbutton is pressed./ if it is, the buttonState is HIGH:if (buttonState = HIGH) / turn LED on:digitalWrite(ledPin, HIGH); else / turn LED off:digitalWrite(ledPin, LOW);代码说明当开关打开时(按钮未被按下),按钮的两个端子之间没有连接,因此引脚接地(通过下拉电阻),我们读取低电平。当开关闭合时(按钮被按下),它在其两个端子之间建立连接,将引脚连接到 5 伏,这样我们读出高电平。结果按下按钮时 LED 亮灯,松开按钮时 LED 熄灯。