数字 I / O 端口的含义是 INPUT 和 OUTPUT 接口,在以前的 LED 灯实验中,我们只使用 GPIO 的OUTPUT 功能。 现在让我们尝试在 Arduino 中使用 I / O 的 INPUT 功能,即该功能是在本实验中从外部设备读取输出值。 我们使用按键和 LED 灯来完成使用 INPUT 和 OUTPUT 作为组合的实验。
软件代码:
int led_out = 11 ; //GPIO 11 LED pin
int keypad_pin = 7; //GPIO 7 key pin
int value;
void setup()
{
pinMode(led_out,OUTPUT); // init led pin output
pinMode(keypad_pin,INPUT); // init key pin input
}
void loop()
{
value = digitalRead(keypad_pin); // read key pad pin vaule
if( value == LOW )
{
digitalWrite(led_out,LOW); // if key value is down turn on LED
}
else
{
digitalWrite(led_out,HIGH); // if key value is down turn off LED
}
}
程序原理:
当按下按钮时, IO7 号接口读到高电平,它将 IO11 号输出高电平,这可以使灯亮。 当没有按下按钮时, IO7 号接口读为低电平时, IO11 号输出低电平,此时指示灯熄灭。
原理图+实验连接图:
![](https://img-blog.csdnimg.cn/20201209162705350.png)
![]() |
![]() |