说明
当引脚设置为输入(INPUT)模式时,引脚为高阻抗状态(100兆欧)。此时该引脚可用于读取传感器信号或开关信号。
注意:当Arduino引脚设置为输入(INPUT)模式或者输入上拉(INPUT_PULLUP)模式,请勿将该引脚与负压或者高于5V的电压相连,否则可能会损坏Arduino控制器。
当Arduino没有使用上拉电阻或下拉电阻而直接与开放的开关相连(如下图所示)。在开关未闭合时,该Arduino引脚2处于不确定状态。为了获得准确的开关信号,须使用上拉电阻或下拉电阻。一般可以选用10K欧姆的电阻。
如果使用下拉电阻(如下图所示),当开关打开时Arduino引脚2输入信号为LOW(低电平),当开关关闭时Arduino引脚2输入信号为HIGH(高电平)。
如果使用上拉电阻(如下图所示),当开关打开时Arduino引脚2输入信号为HIGH(高电平),当开关关闭时Arduino引脚2输入信号为LOW(低电平)。
设置Arduino引脚为输入模式示例程序
在本示例中,我们将配置Arduino引脚2为输入模式。在此示例中,当开关闭合后,引脚2将获得高电平开关信号,引脚13旁的LED(如下照片红圈所示)将被点亮。反之,该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 |
/* 设置Arduino引脚为输入模式示例程序 v1.0 Created 2016 by 太极创客 www.taichi-maker.com 说明: 本程序旨在演示如何将Arduino引脚设置为输入模式。 当按钮被按下后,引脚13旁的LED将会点亮。 获得具体连接电路图,请参阅太极创客网站。 This example code is in the public domain. */ const int ledPin = 13; const int inputPin = 2; // 当Arduino控制器通电或复位后,setup函数会运行一次 void setup() { //将引脚13设置为输出模式 pinMode(ledPin, OUTPUT); //将引脚2设置为输入模式 //引脚2与外部按钮连接 pinMode(inputPin, INPUT); } // 当Arduino控制器通电或复位后,loop函数会反复运行 void loop() { // 检查引脚2的输入情况 // 开关闭合后,引脚2将获得高电平信号 int val = digitalRead(inputPin); // 检查引脚2是否为高电平 // 当按钮按下时,点亮引脚13旁的LED if (val == HIGH) { digitalWrite(ledPin, HIGH); } else //当按钮未按下,熄灭引脚13LED { digitalWrite(ledPin, LOW); } } |