第十五课 Arduino 教程-- Arduino IO函数

合集下载

Arduino-教程-第15课-Arduino-IO函数

Arduino-教程-第15课-Arduino-IO函数

第15课Arduino I/O函数Arduino函数库Arduino函数库1.Arduino I/O函数2.Arduino 高级I/O函数3.Arduino 字符函数4.Arduino 数学库5.Arduino 三角函数Arduino板上的引脚可以配置为输入或输出。

我们将在这些模式下解释引脚的功能。

重要的是要注意,大多数Arduino模拟引脚可以按照与数字引脚完全相同的方式进行配置和使用。

引脚配置为INPUTArduino引脚默认配置为输入,因此在使用它们作为输入时,不需要使用 pinMode()显式声明为输入。

以这种方式配置的引脚被称为处于高阻抗状态。

输入引脚对采样电路的要求非常小,相当于引脚前面的100兆欧的串联电阻。

这意味着将输入引脚从一个状态切换到另一个状态所需的电流非常小。

这使得引脚可用于诸如实现电容式触摸传感器或读取LED作为光电二极管的任务。

被配置为pinMode(pin,INPUT)的引脚(没有任何东西连接到它们,或者有连接到它们而未连接到其他电路的导线),报告引脚状态看似随机的变化,从环境中拾取电子噪音或电容耦合附近引脚的状态。

上拉电阻如果没有输入,上拉电阻通常用于将输入引脚引导到已知状态。

这可以通过在输入端添加上拉电阻(到5V)或下拉电阻(接地电阻)来实现。

10K电阻对于上拉或下拉电阻来说是一个很好的值。

使用内置上拉电阻,引脚配置为输入Atmega芯片内置了2万个上拉电阻,可通过软件访问。

通过将pinMode()设置为INPUT_PULLUP可访问这些内置上拉电阻。

这有效地反转了INPUT模式的行为,其中HIGH表示传感器关闭,LOW表示传感器开启。

此上拉的值取决于所使用的微控制器。

在大多数基于AVR的板上,该值保证在20kΩ和50kΩ之间。

在Arduino Due上,它介于50kΩ和150kΩ之间。

有关确切的值,请参考板上微控制器的数据表。

当将传感器连接到配置为INPUT_PULLUP的引脚时,另一端应接地。

arduino基本函数

arduino基本函数

标题:Arduino基本函数的重新表述引言: Arduino是一种开源硬件平台,拥有广泛的应用领域,包括物联网、嵌入式系统和机器人等。

在Arduino编程中,函数起着至关重要的作用,因为它们是实现特定功能的关键。

本文将重新表述Arduino的一些基本函数,以帮助读者更好地理解其原理和应用。

1. pinMode函数首先,我们来重新表述Arduino的pinMode函数。

该函数用于设置指定引脚的模式,可将其设置为输入模式(INPUT)或输出模式(OUTPUT)。

通过以下方式调用该函数:pinMode(pin, mode);其中pin是要设置的引脚号,mode可以是INPUT或OUTPUT。

这个函数非常重要,因为它决定了引脚的行为。

2. digitalWrite函数接下来,我们重新表述Arduino的digitalWrite函数。

该函数用于向指定引脚写入数字值,对于设为输出模式的引脚,可以将它们设置为HIGH或LOW。

调用方式如下:digitalWrite(pin, value);pin是要写入的引脚号,value可以是HIGH或LOW。

这个函数常用于控制LED的亮灭等场景。

3. digitalRead函数第三个要重新表述的函数是Arduino的digitalRead函数。

该函数用于读取指定引脚的数字值,例如传感器的输出。

用法如下:value = digitalRead(pin);pin是要读取的引脚号,读取到的值将保存在value变量中。

这个函数常用于检测外部设备的状态或响应用户输入。

4. analogWrite函数现在,让我们重新表述Arduino的analogWrite函数。

这个函数用于在一个兼容的引脚输出PWM(脉冲宽度调制)信号,可以控制设备的亮度或速度等。

用法如下:analogWrite(pin, value);pin是要输出PWM信号的引脚号,value是要输出的占空比,范围从0到255。

arduino基本函数

arduino基本函数

arduino基本函数Arduino是一款开源的电子原型平台,它提供了一套用于编写和上传代码的基本函数库。

这些基本函数可以帮助开发者实现各种功能,从简单的控制LED灯的开关,到复杂的传感器数据采集和处理。

本文将介绍几个常用的Arduino基本函数,并展示它们的用法和作用。

1. pinMode函数pinMode函数用于设置Arduino的引脚模式,可以将引脚设置为输入模式(INPUT)或输出模式(OUTPUT)。

在输入模式下,引脚可以接收外部信号;在输出模式下,引脚可以控制外部设备。

例如,以下代码将引脚13设置为输出模式:```pinMode(13, OUTPUT);```2. digitalWrite函数digitalWrite函数用于控制引脚的电平状态,可以将引脚设置为高电平(HIGH)或低电平(LOW)。

在输出模式下,可以使用digitalWrite函数控制LED灯的亮灭。

例如,以下代码将引脚13设置为高电平,点亮LED灯:```digitalWrite(13, HIGH);```3. digitalRead函数digitalRead函数用于读取引脚的电平状态,可以获取引脚接收到的外部信号。

在输入模式下,可以使用digitalRead函数读取传感器的数据。

例如,以下代码将读取引脚2的电平状态并将结果存储在变量sensorValue中:```int sensorValue = digitalRead(2);```4. analogWrite函数analogWrite函数用于模拟输出,可以通过调节引脚的占空比来控制输出的电压。

这个函数通常用于控制PWM(脉宽调制)信号。

例如,以下代码将引脚9设置为模拟输出模式,并将占空比设置为50%:```analogWrite(9, 128);```5. analogRead函数analogRead函数用于读取引脚的模拟电压值,可以获取传感器输出的模拟信号。

例如,以下代码将读取引脚A0的模拟电压值并将结果存储在变量sensorValue中:```int sensorValue = analogRead(A0);```6. delay函数delay函数用于延迟一段时间,可以暂停程序的执行。

arduino语法手册函数部分

arduino语法手册函数部分

;Arduino 语法手册函数部分摘自:函数部分数字 I/OpinMode()描述将指定的引脚配置成输出或输入。

详情请见digital pins。

语法pinMode(pin, mode)#参数pin:要设置模式的引脚mode:INPUT或OUTPUT返回无例子ledPin = 13语法…noTone(pin)参数pin: 所要停止产生声音的引脚返回无shiftOut()shiftOut())描述将一个数据的一个字节一位一位的移出。

从最高有效位(最左边)或最低有效位(最右边)开始。

依次向数据脚写入每一位,之后时钟脚被拉高或拉低,指示刚才的数据有效。

注意:如果你所连接的设备时钟类型为上升沿,你要确定在调用shiftOut()前时钟脚为低电平,如调用digitalWrite(clockPin, LOW)。

注意:这是一个软件实现;Arduino提供了一个硬件实现的SPI库,它速度更快但只在特定脚有效。

语法shiftOut(dataPin, clockPin, bitOrder, value)参数dataPin:输出每一位数据的引脚(int)clockPin:时钟脚,当dataPin有值时此引脚电平变化(int)bitOrder:输出位的顺序,最高位优先或最低位优先value: 要移位输出的数据(byte)^返回无shiftIn()描述将一个数据的一个字节一位一位的移入。

从最高有效位(最左边)或最低有效位(最右边)开始。

对于每个位,先拉高时钟电平,再从数据传输线中读取一位,再将时钟线拉低。

注意:这是一个软件实现;Arduino提供了一个硬件实现的SPI库,它速度更快但只在特定脚有效。

语法《shiftIn(dataPin,clockPin,bitOrder)参数dataPin:输出每一位数据的引脚(int)clockPin:时钟脚,当dataPin有值时此引脚电平变化(int)bitOrder:输出位的顺序,最高位优先或最低位优先返回读取的值(byte)pulseIn()描述《读取一个引脚的脉冲(HIGH或LOW)。

arduino基本函数

arduino基本函数

arduino基本函数Arduino是一种开源硬件平台,它基于易于使用的硬件和软件,可以用于创建各种互动项目。

在本文中,我们将介绍一些Arduino的基本函数,这些函数是编写Arduino代码时经常使用的。

1. digitalWrite()函数:这个函数用于将指定的引脚设置为高电平(HIGH)或低电平(LOW)。

例如,digitalWrite(13, HIGH)会将数字引脚13设置为高电平。

2. pinMode()函数:这个函数用于将指定的引脚设置为输入(INPUT)或输出(OUTPUT)模式。

例如,pinMode(13, OUTPUT)会将数字引脚13设置为输出模式。

3. digitalRead()函数:这个函数用于读取指定引脚的电平状态,返回值为HIGH或LOW。

例如,state = digitalRead(13)会将数字引脚13的电平状态保存在变量state中。

4. analogWrite()函数:这个函数用于在指定的引脚上产生模拟信号。

模拟信号的取值范围是0到255,对应于引脚的电压范围0到5V。

例如,analogWrite(9, 127)会在数字引脚9上输出一个占空比为50%的PWM信号。

5. analogRead()函数:这个函数用于读取指定引脚上的模拟信号。

模拟信号的取值范围是0到1023,对应于引脚的电压范围0到5V。

例如,value = analogRead(A0)会将模拟引脚A0上的模拟信号读取到变量value中。

6. delay()函数:这个函数用于延迟指定的毫秒数。

例如,delay(1000)会延迟1秒。

7. millis()函数:这个函数返回自Arduino开机以来的毫秒数。

它常用于计时或控制时间间隔。

例如,currentTime = millis()会将当前的毫秒数保存在变量currentTime中。

8. Serial.begin()函数:这个函数用于初始化串口通信,并指定波特率。

arduino 常用函数

arduino 常用函数

Arduino常用函数一、什么是ArduinoArduino是一种开源电子原型平台,用于设计和制造通过电子和软件创建的交互式项目。

它基于易于使用的硬件和软件,由全球广大的创客共同开发和改进。

Arduino平台非常适合创造独具创意的自动化装置、机器人、传感器以及其他物联网相关的项目。

二、常用函数概述Arduino提供了丰富的库函数和内置函数,以简化开发过程。

这些函数涵盖了各种常见任务,如控制IO口、读取传感器数据、与外部设备通信等。

在本文中,我们将介绍几个常用的Arduino函数。

三、DigitalWrite函数1. 函数概述digitalWrite()函数用于设置数字引脚的电平。

通过该函数,可以将数字引脚设置为高电平(高电压)或低电平(低电压),从而控制相应的设备。

2. 函数语法digitalWrite(pin, value);3. 函数参数•pin:要设置电平的引脚编号。

•value:引脚的电平,可选值为高电平(HIGH)和低电平(LOW)。

4. 示例下面的示例演示了如何使用digitalWrite()函数控制LED灯亮灭:int ledPin = 13; // LED连接的引脚void setup() {pinMode(ledPin, OUTPUT); // 将引脚设置为输出模式}void loop() {digitalWrite(ledPin, HIGH); // 设置引脚为高电平,LED灯亮起delay(1000); // 延迟1秒digitalWrite(ledPin, LOW); // 设置引脚为低电平,LED灯熄灭delay(1000); // 延迟1秒}四、AnalogRead函数1. 函数概述analogRead()函数用于读取模拟引脚的电压值。

通过该函数,可以获取传感器等模拟设备的输出电压,并进行相应的处理。

2. 函数语法analogRead(pin);3. 函数参数•pin:要读取电压的引脚编号。

Arduino基本函数介绍

Arduino基本函数介绍

Arduino基本函数介绍转载⾃数字 I/O(1)pinMode(pin, mode) 数字IO ⼝输⼊输出模式定义函数,pin 表⽰为0~13, mode 表⽰为INPUT 或OUTPUT 。

(2) digitalWrite(pin, value) 数字IO ⼝输出电平定义函数,pin 表⽰为0~13,value 表⽰为HIGH 或LOW,⽐如定义HIGH 可以驱动LED。

(3)int digitalRead(pin) 数字IO ⼝读输⼊电平函数,pin 表⽰为0~13,value 表⽰为HIGH 或LOW。

⽐如可以读数字传感器。

模拟 I/O(1)int analogRead(pin) 模拟IO ⼝读函数,pin 表⽰为0~5(Arduino Diecimila 为0~5,Arduino nano 为0~7)。

⽐如可以读模拟传感器(10 位AD,0~5V 表⽰为0~1023)。

(2)analogWrite(pin, value) PWM 数字IO ⼝PWM 输出函数,Arduino 数字IO ⼝标注了PWM 的IO ⼝可使⽤该函数,pin 表⽰3, 5, 6, 9, 10, 11,value 表⽰为0~255。

⽐如可⽤于电机PWM 调速或⾳乐播放。

扩展 I/O(1)shiftOut(dataPin, clockPin, bitOrder, value) SPI 外部IO 扩展函数,通常使⽤带SPI 接⼝的74HC595 做8 个IO 扩展,dataPin 为数据⼝,clockPin 为时钟⼝,bitOrder 为数据传输⽅向(MSBFIRST ⾼位在前,LSBFIR ST 低位在前),value 表⽰所要传送的数据(0~255),另外还需要⼀个IO ⼝做74HC595 的使能控制。

(2)unsigned long pulseIn(pin, value) 脉冲长度记录函数,返回时间参数(us),pin 表⽰为0~13,value 为HIGH 或LOW。

arduino 调用方法

arduino 调用方法

arduino 调用方法Arduino是一款广泛应用于电子和交互项目开发的开源平台,其强大的库支持让开发者可以轻松调用各种方法以实现特定的功能。

本文将详细介绍Arduino中常见的一些调用方法,帮助您更好地理解和运用它们。

一、数字I/O口调用方法1.设置数字I/O口模式```cpppinMode(pin, mode);```其中,`pin`表示要设置的数字I/O口编号,`mode`表示设置的模式(如INPUT、OUTPUT、INPUT_PULLUP等)。

2.读取数字I/O口状态```cppdigitalRead(pin);```该方法用于读取指定数字I/O口(`pin`)的当前状态(高或低)。

3.写入数字I/O口状态```cppdigitalWrite(pin, value);```该方法用于将指定数字I/O口(`pin`)设置为高或低(`value`)。

二、模拟I/O口调用方法1.读取模拟I/O口值```cppanalogRead(pin);```该方法用于读取指定模拟I/O口(`pin`)的电压值。

2.写入模拟I/O口值```cppanalogWrite(pin, value);```该方法用于将指定模拟I/O口(`pin`)输出PWM信号,其中`value`表示PWM的占空比值。

三、串行通信调用方法1.初始化串行通信```cppSerial.begin(baudrate);```其中,`baudrate`表示串行通信的波特率。

2.串行发送数据```cppSerial.print(data);Serial.println(data);```这两个方法用于串行发送数据,其中`print`直接发送数据,而`println`会在数据末尾添加换行符。

3.串行接收数据```cppdata = Serial.read();```该方法用于从串行缓冲区读取一个字节的数据。

四、中断调用方法1.设置中断```cppattachInterrupt(digitalPinToInterrupt(pin), function, mode);```其中,`pin`表示中断引脚,`function`表示中断触发时要调用的函数,`mode`表示中断触发条件(如LOW、CHANGE、RISING等)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第十五课Arduino I/O函数
Arduino板上的引脚可以配置为输入或输出。

我们将在这些模式下解释引脚的功能。

重要的是要注意,大多数Arduino模拟引脚可以按照与数字引脚完全相同的方式进行配置和使用。

引脚配置为INPUT
Arduino引脚默认配置为输入,因此在使用它们作为输入时,不需要使用 pinMode()显式声明为输入。

以这种方式配置的引脚被称为处于高阻抗状态。

输入引脚对采样电路的要求非常小,相当于引脚前面的100兆欧的串联电阻。

这意味着将输入引脚从一个状态切换到另一个状态所需的电流非常小。

这使得引脚可用于诸如实现电容式触摸传感器或读取LED作为光电二极管的任务。

被配置为pinMode(pin,INPUT)的引脚(没有任何东西连接到它们,或者有连接到它们而未连接到其他电路的导线),报告引脚状态看似随机的变化,从环境中拾取电子噪音或电容耦合附近引脚的状态。

上拉电阻
如果没有输入,上拉电阻通常用于将输入引脚引导到已知状态。

这可以通过在输入端添加上拉电阻(到5V)或下拉电阻(接地电阻)来实现。

10K电阻对于上拉或下拉电阻来说是一个很好的值。

使用内置上拉电阻,引脚配置为输入
Atmega芯片内置了2万个上拉电阻,可通过软件访问。

通过将pinMode()设置为INPUT_PULLUP可访问这些内置上拉电阻。

这有效地反转了INPUT模式的行为,其中HIGH表示传感器关闭,LOW表示传感器开启。

此上拉的值取决于所使用的微控制器。

在大多数基于AVR的板上,该值保证在20kΩ和50kΩ之间。

在Arduino Due上,它介于50kΩ和150kΩ之间。

有关确切的值,请参考板上微控制器的数据表。

当将传感器连接到配置为INPUT_PULLUP的引脚时,另一端应接地。

在简单开关的情况下,这会导致当开关打开时引脚变为高电平,当按下开关时引脚为低电平。

上拉电阻提供足够的电流来点亮连接到被配置为输入的引脚的LED。

如果项目中的LED似乎在工作,但很昏暗,这可能是发生了什么。

控制引脚是高电平还是低电平的相同寄存器(内部芯片存储器单元)控制上拉电阻。

因此,当引脚处于INPUT模式时,配置为有上拉电阻导通的引脚将被开启;如果引脚通过
pinMode()切换到OUTPUT模式,引脚将配置为高电平。

这也适用于另一个方向,如果通过pinMode()切换到输入,则处于高电平状态的输出引脚将设置上拉电阻。

示例
引脚配置为OUTPUT
通过pinMode()配置为OUTPUT的引脚被认为处于低阻抗状态。

这意味着它们可以向其他电路提供大量的电流。

Atmega引脚可以向其他器件/电路提供(提供正电流)或吸收(提供负电流)高达40mA(毫安)的电流。

这是足以点亮LED或者运行许多传感器的电流(不要忘记串联电阻),但不足以运行继电器,螺线管或电机。

试图从输出引脚运行高电流器件,可能损坏或破坏引脚中的输出晶体管,或损坏整个
Atmega芯片。

通常,这会导致微控制器中出现“死”引脚,但是剩余的芯片仍然可以正常工作。

因此,最好通过470Ω或1k电阻将OUTPUT引脚连接到其他器件,除非特定应用需要从引脚吸取最大电流。

pinMode()函数
pinMode()函数用于将特定引脚配置为输入或输出。

可以使用INPUT_PULLUP模式启用内部上拉电阻。

此外,INPUT模式显式禁止内部上拉。

pinMode()函数语法
∙pin - 你希望设置模式的引脚的编号
∙mode - INPUT,OUTPUT或INPUT_PULLUP。

示例
digitalWrite()函数
digitalWrite()函数用于向数字引脚写入HIGH或LOW值。

如果该引脚已通过pinMode()配置为OUTPUT,则其电压将被设置为相应的值:HIGH为5V(或3.3V在3.3V板上),LOW为0V(接地)。

如果引脚配置为INPUT,则digitalWrite()将启用(HIGH)或禁止(LOW)输入引脚的内部上拉。

建议将pinMode()设置为INPUT_PULLUP,以启用内部上拉电阻。

如果不将pinMode()设置为OUTPUT,而将LED连接到引脚,则在调用
digitalWrite(HIGH)时,LED可能会变暗。

在没有明确设置pinMode()时,digitalWrite()将启用内部上拉电阻,这就像一个大的限流电阻。

digitalWrite()函数语法
∙pin - 你希望设置模式的引脚的编号
∙value - HIGH或LOW。

示例
analogRead()函数
Arduino能够检测是否有一个电压施加到其引脚,并通过digitalRead()函数报告。

开/关传感器(检测物体的存在)和模拟传感器之间存在一个差异,模拟传感器的值连续变化。

为了读取这种类型的传感器,我们需要一个不同类型的引脚。

在Arduino板的右下角,你会看到6个标记为“Analog In”的引脚。

这些特殊引脚不仅可以告知是否有电压施加给它们,还可以告知它们的值。

通过使用analogRead()函数,我们可以读取施加到其中一个引脚的电压。

此函数返回0到1023之间的数字,表示0到5伏特之间的电压。

例如,如果施加到编号0的引脚的电压为2.5V,则analogRead(0)返回512。

analogRead()函数语法
pin - 要读取的模拟输入引脚的编号(大多数电路板上为0至5,Mini和Nano上为0至7,Mega上为0至15)
示例。

相关文档
最新文档