基本信息
文件名称:Arduino 系列:Arduino Nano (基于 ATmega328P)_(5).数字输入输出控制.docx
文件大小:25.42 KB
总页数:26 页
更新时间:2025-06-27
总字数:约1.35万字
文档摘要

PAGE1

PAGE1

数字输入输出控制

数字输入输出引脚

ArduinoNano提供了22个数字输入输出引脚(0-13和A0-A5),这些引脚可以配置为输入或输出模式。每个引脚可以输出高电平(5V)或低电平(0V),也可以读取外部电路的高电平或低电平信号。

配置引脚模式

在使用数字输入输出引脚之前,需要先配置其模式。可以通过pinMode()函数来设置引脚为输入模式或输出模式。常见的模式有:

INPUT:引脚用于读取外部信号。

OUTPUT:引脚用于输出信号。

INPUT_PULLUP:引脚用于读取外部信号,但内部上拉电阻启用,使引脚默认为高电平。

代码示例:配置引脚模式

//定义引脚

constintledPin=13;//LED连接在数字引脚13

constintbuttonPin=2;//按钮连接在数字引脚2

voidsetup(){

//设置引脚模式

pinMode(ledPin,OUTPUT);//设置引脚13为输出模式

pinMode(buttonPin,INPUT_PULLUP);//设置引脚2为输入模式,启用内部上拉电阻

}

voidloop(){

//读取按钮状态

intbuttonState=digitalRead(buttonPin);

//根据按钮状态控制LED

if(buttonState==HIGH){

digitalWrite(ledPin,LOW);//按钮未按下,LED关闭

}else{

digitalWrite(ledPin,HIGH);//按钮按下,LED点亮

}

}

读取数字输入

使用digitalRead()函数可以读取数字引脚的状态。该函数返回HIGH或LOW,表示引脚的电压状态。

代码示例:读取按钮状态

constintbuttonPin=2;//按钮连接在数字引脚2

voidsetup(){

pinMode(buttonPin,INPUT);//设置引脚2为输入模式

Serial.begin(9600);//初始化串口通信

}

voidloop(){

intbuttonState=digitalRead(buttonPin);//读取按钮状态

//通过串口打印按钮状态

Serial.println(buttonState);

delay(1000);//延时1秒

}

输出数字信号

使用digitalWrite()函数可以向数字引脚输出高电平(5V)或低电平(0V)。该函数接受两个参数:引脚编号和输出状态(HIGH或LOW)。

代码示例:控制LED点亮和熄灭

constintledPin=13;//LED连接在数字引脚13

voidsetup(){

pinMode(ledPin,OUTPUT);//设置引脚13为输出模式

}

voidloop(){

digitalWrite(ledPin,HIGH);//点亮LED

delay(1000);//延时1秒

digitalWrite(ledPin,LOW);//熄灭LED

delay(1000);//延时1秒

}

数字输入输出的应用

数字输入输出引脚在多种应用场景中非常有用,例如控制LED、读取按钮状态、驱动继电器等。

控制LED

LED是最常见的数字输出设备。通过控制LED的点亮和熄灭,可以实现简单的状态指示功能。

代码示例:控制多个LED

constintled1Pin=5;//LED1连接在数字引脚5

constintled2Pin=6;//LED2连接在数字引脚6

constintbuttonPin=7;//按钮连接在数字引脚7

voidsetup(){

pinMode(led1Pin,OUTPUT);//设置引脚5为输出模式

pinMode(led2Pin,OUTPUT);//设置引脚6为输出模式

pinMode(buttonPin,INPUT_PULLUP);//设置引脚7为输入模式,启用内部上拉电阻

}

voidloop(){

intbu