【笔记】Arduino学习笔记

前言

Arduino采用C++编写代码,学习Arduino的内置C++库

输出

设置引脚为输出模式

1
pinMode(引脚常量或引脚编号, OUTPUT);

写出数据

输出为高电平

  • 高电平点亮LED
1
digitalWrite(引脚常量或引脚编号, HIGH);

输出为低电平

  • 低电平熄灭LED
1
digitalWrite(引脚常量或引脚编号, LOW);

写出数据(模拟输出)

  • 只有包含~标记的引脚才能进行模拟输出

输出模拟值

  • 可以使用发光二极管进行输出模拟值
  • 可以在没有切换模式前使用analogWrite()函数进行输出模拟值
  • 对于Arduino UNO来说,输出模拟值是通过PWM实现的

模拟值:范围是0~255的整数

1
analogWrite(引脚常量或引脚编号, 模拟值);

输入

设置引脚为输入模式

  • 可以识别到高电平和低电平
  • 在上拉模式下,按下按键输入1,松开按键输入0
  • 引脚悬空:在引脚设置为输入状态但是没有输入的信号时,此时可能为任意一种电平状态
1
pinMode(引脚常量或引脚编号, INPUT);

设置引脚为输入上拉模式

  • 内置上拉电阻的上拉模式
  • 在输入上拉模式下,按下按键输入0,松开按键输入1
1
pinMode(引脚常量或引脚编号, INPUT_PULLUP);

读入数据

  • 读取引脚的高电平(1)或低电平(0)
1
int 变量名 = digitalRead(引脚常量或引脚编号);

读入数据(模拟输入)

输入模拟值

  • 可以使用电位器进行输入模拟值
  • 可以将05V的电压转换成01023的数值
  • 对于Arduino UNO来说,输入模拟值是通过电压实现的

模拟值:范围是0~255的整数

1
int 变量名 = analogRead(引脚常量或引脚编号);

等比映射模拟输入和模拟输出

  • 将01024映射为0255
1
2
3
int 转换前的模拟值 = analogRead(用于模拟输入的引脚常量或引脚编号);
int 转换后的模拟值 = map(转换前的模拟值, 0, 1023, 0, 255);
analogWrite(用于模拟输出的引脚常量或引脚编号, 转换后的模拟值);

延迟

延迟毫秒

  • 单位为毫秒
1
delay(1000)

延迟微秒

1
delayMicroseconds(1000)

串口

初始化串口

9600:串口通讯的速率,波特率

1
Serial.begin(9600);

串口输出

末尾不包含换行

1
Serial.print(值);

末尾包含换行

1
Serial.println(值);

完成

参考文献

哔哩哔哩——太极创客