零基础入门学用 Arduino 教程 – 15 数字输入(3) – 按键开关控制LED
本课示例代码:(无法复制本站示例程序代码?请点击这里获得解决方法。)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
/* Input Pullup Serial 本示例展示如何使用pinMode(INPUT_PULLUP)。通过本程序,Arduino将读取引脚2 的数字输入并将结果显示在串口监视器中。 电路: * 引脚2连接轻触开关,开关另一端接地 * 引脚13上安装有开发板内置LED 与使用pinMode(INPUT)不同,我们在使用pinMode(INPUT_PULLUP)时不需要外接上拉或下拉电阻。 开发板内置一个20K欧姆电阻,该电阻将引脚上拉到5V。开关在打开时,引脚读取到高电平。开关闭合后,引脚读取到低电平。 created 14 March 2012 by Scott Fitzgerald http://www.arduino.cc/en/Tutorial/InputPullupSerial This example code is in the public domain 本示例程序的注释文字中文翻译由太极创客提供 www.taichi-maker.com */ void setup() { //开始串口通讯 Serial.begin(9600); //将引脚2设置为输入上拉模式 pinMode(2, INPUT_PULLUP); pinMode(13, OUTPUT); } void loop() { //将开关状态数值读取到变量中 int sensorVal = digitalRead(2); //输出开关状态数值 Serial.println(sensorVal); //请留意在上拉模式下,按钮的逻辑状态是反的。 //即:开关断开时引脚读取到高电平。开关被按下后引脚读取到低电平。 //按钮被按下后,引脚13连接的LED将被点亮。按钮没有按下时,LED熄灭。 //如果按钮没有按下,熄灭LED。否则,点亮LED if (sensorVal == HIGH) { //按钮没有按下 digitalWrite(13, LOW); //熄灭LED } else { //否则 digitalWrite(13, HIGH); //点亮LED } } |