基本信息
文件名称:Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(6).数字输入输出.docx
文件大小:23.41 KB
总页数:18 页
更新时间:2025-06-27
总字数:约9.45千字
文档摘要

PAGE1

PAGE1

数字输入输出

数字引脚概述

ArduinoDue提供了丰富的数字引脚,这些引脚可以配置为输入或输出模式。数字输入引脚用于读取高低电平信号,而数字输出引脚用于输出高低电平信号。这些引脚的使用非常灵活,可以通过简单的编程控制其状态。在本节中,我们将详细介绍如何使用这些数字引脚进行基本的输入输出操作。

数字输出

基本概念

数字输出引脚可以输出高电平(5V)或低电平(0V)。通过设置引脚的模式为输出模式,我们可以控制这些引脚的状态。在ArduinoDue中,数字输出引脚的电压范围是0V到3.3V,因为它是基于3.3V逻辑电平的。

控制数字输出

使用pinMode()和digitalWrite()函数可以轻松控制数字输出引脚。pinMode()函数用于设置引脚模式,而digitalWrite()函数用于设置引脚的输出状态。

示例:控制LED灯

假设我们连接了一个LED灯到数字引脚13,我们可以编写以下代码来控制LED的亮灭:

//定义LED连接的引脚

constintledPin=13;

voidsetup(){

//设置引脚模式为输出

pinMode(ledPin,OUTPUT);

}

voidloop(){

//点亮LED

digitalWrite(ledPin,HIGH);

//延时1000毫秒

delay(1000);

//熄灭LED

digitalWrite(ledPin,LOW);

//延时1000毫秒

delay(1000);

}

代码解析

定义引脚:constintledPin=13;定义了一个常量ledPin,表示LED连接的引脚。

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

控制引脚状态:

digitalWrite(ledPin,HIGH);设置引脚13输出高电平(3.3V)。

digitalWrite(ledPin,LOW);设置引脚13输出低电平(0V)。

延时:delay(1000);使程序暂停1000毫秒(1秒)。

数字输入

基本概念

数字输入引脚可以读取高电平(3.3V)或低电平(0V)信号。通过设置引脚的模式为输入模式,我们可以读取这些引脚的状态。在ArduinoDue中,数字输入引脚的电压范围也是0V到3.3V。

读取数字输入

使用pinMode()和digitalRead()函数可以轻松读取数字输入引脚的状态。pinMode()函数用于设置引脚模式,而digitalRead()函数用于读取引脚的输入状态。

示例:读取按钮状态

假设我们连接了一个按钮到数字引脚2,按钮的一端接地(GND),另一端连接到数字引脚2。我们可以编写以下代码来读取按钮的状态并控制LED灯的亮灭:

//定义按钮连接的引脚

constintbuttonPin=2;

//定义LED连接的引脚

constintledPin=13;

voidsetup(){

//设置按钮引脚模式为输入

pinMode(buttonPin,INPUT);

//设置LED引脚模式为输出

pinMode(ledPin,OUTPUT);

}

voidloop(){

//读取按钮状态

intbuttonState=digitalRead(buttonPin);

//根据按钮状态控制LED

if(buttonState==HIGH){

//按钮被按下,点亮LED

digitalWrite(ledPin,HIGH);

}else{

//按钮未被按下,熄灭LED

digitalWrite(ledPin,LOW);

}

}

代码解析

定义引脚:

constintbuttonPin=2;定义了一个常量buttonPin,表示按钮连接的引脚。

constintledPin=13;定义了一个常量ledPin,表示LED连接的引脚。

设置引脚模式:

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

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

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