【实验一】Arduino开发板实战
2026/7/13 5:31:04 网站建设 项目流程

目录

一、AnalogReadSerial 实验测试

1.1硬件接线方式

1.2逐行代码详细解释

二、BareMinimum 实验测试

2.1逐行代码详解

三、Blink实验测试

3.1逐行代码详解

四、DigitalReadSerial实验测试

4.1硬件连接方式

4.2逐行代码详解

五、Fade实验测试

5.1硬件连接方式

5.2逐行代码详解

六、ReadAnalogVoltage实验测试

6.1硬件连接方式

6.2逐行代码详解


本次实验选用Arduino Uno R3作为核心主控开发板。Arduino Uno R3 是一款基于 ATmega328P 单片机的开源通用开发板,具备丰富的数字引脚与模拟引脚、稳定的供电电路和标准化接口,操作简便、兼容性强,非常适合嵌入式入门教学实验。

软件端使用官方 Arduino IDE 集成开发环境完成程序编写、编译与上传,本次功能验证所用测试代码为软件内置官方示例程序,完整路径为:文件(File)→ 示例(Examples)→ 01.Basics(基础示例)目录下的基础程序。


一、AnalogReadSerial 实验测试

1.1硬件接线方式

方式一:有电位器情况下,电位器中间引脚接 A0,两侧引脚分别接 +5V 和 GND 地。

  • 电位器是可变电阻:转动旋钮可改变 A0 引脚的输入电压(0V~5V);
  • 电压变化 →analogRead(A0)的数值随之在 0~1023 之间变化;
  • 在 Arduino IDE 打开串口监视器 / 串口绘图器,可实时观察数值变化曲线。

方式二:无电位器情况下,A0引脚可以接 +5V ,+3.3V和 GND 地分别测试。

  • +5V ,+3.3V和 GND 地对应数值大致为1023,674和0;
  • 在 Arduino IDE 打开串口监视器 / 串口绘图器,可实时观察数值变化曲线。

Arduino IDE 打开串口监视器 / 串口绘图器打开方式如下,需设置好串口监视器波特率为9600。

1.2逐行代码详细解释

/* 模拟量读取并串口输出 AnalogReadSerial 读取A0引脚的模拟输入信号,将数值打印到串口监视器 可通过串口绘图器查看波形(工具 > 串口绘图器) 接线方法:电位器中间引脚接 A0,两侧引脚分别接 +5V 和 GND 地 */ // setup()函数:按下复位/上电时仅运行一次,用于初始化设置 void setup() { // 初始化串口通信,波特率设置为9600 Serial.begin(9600); } // loop()函数:循环重复执行,持续读取模拟信号 void loop() { // 读取A0模拟引脚的输入值(范围:0 ~ 1023) int sensorValue = analogRead(A0); // 通过串口打印读取到的数值,每次打印后自动换行 Serial.println(sensorValue); // 短暂延时,保证读取和传输稳定,单位:毫秒(ms) delay(1); }

二、BareMinimum 实验测试

BareMinimum = Arduino 的最小程序框架,是所有 Arduino 程序的基础模板。

Arduino 程序必须包含这两个函数,缺一不可。

  • setup()一次性初始化;
  • loop()主循环;

本身默认是空代码,不会实现任何实际功能,仅用来展示基础结构。

2.1逐行代码详解

/* BareMinimum Arduino 最基础模板代码 所有Arduino程序的最简基础结构,仅包含两个必备函数 */ // setup():上电/复位时,只运行一次,用于初始化 void setup() { // 初始化代码可写在这里 } // loop():反复无限循环运行,主程序逻辑 void loop() { // 循环执行的代码可写在这里 }

三、Blink实验测试

  • 核心功能:Arduino 板载 LED 以 1 秒周期持续闪烁(亮 1 秒、灭 1 秒);
  • 硬件:Arduino Uno R3 板载 LED(引脚 13),无需额外接线,也可改引脚号外接;
  • 用途:验证开发板能否正常烧录程序、正常运行,是 Arduino 入门经典示例。

3.1逐行代码详解

/* Blink 闪烁程序 控制板载LED亮1秒、灭1秒,反复循环 大多数Arduino开发板都自带可控制板载LED: UNO、MEGA、ZERO型号:板载LED对应数字引脚13 MKR1000型号:板载LED对应数字引脚6 使用宏定义 LED_BUILTIN 可适配不同型号开发板,自动匹配正确引脚 如需查看对应型号板载LED引脚信息,可查阅官方硬件技术文档: https://docs.arduino.cc/hardware/ */ // setup函数:上电或按下复位按钮时,仅运行一次 void setup() { // 将板载LED引脚设置为输出模式 pinMode(LED_BUILTIN, OUTPUT); } // loop函数:无限循环持续运行 void loop() { digitalWrite(LED_BUILTIN, HIGH); // 将引脚置为高电平,点亮LED delay(1000); // 延时1000毫秒(1秒),保持点亮状态 digitalWrite(LED_BUILTIN, LOW); // 将引脚置为低电平,熄灭LED delay(1000); // 延时1000毫秒(1秒),保持熄灭状态 }

四、DigitalReadSerial实验测试

4.1硬件连接方式

方式一:有元器件的情况下,按键一端接 D2,另一端接 GND / 5V,最好串联 10kΩ 电阻做下拉 / 上拉,防止悬空乱跳地。

  • 按下按键 → 引脚电平改变,串口数值在 0 和 1 之间切换;
  • 松开按键 → 保持原有电平数值;
  • 在 Arduino IDE 打开串口监视器 / 串口绘图器,可实时观察数值变化曲线。

方式二:无元器件情况下,D2引脚可以接 +5V ,+3.3V和 GND 地分别测试。

  • +5V ,+3.3V和 GND 地对应数值为1和0;
  • 在 Arduino IDE 打开串口监视器 / 串口绘图器,可实时观察数值变化曲线。

高电平为1,低电平为0。

4.2逐行代码详解

/* DigitalReadSerial 数字引脚读取并串口输出 读取2号数字引脚的按键输入信号,将读取结果打印至串口监视器 */ // 定义按键连接的引脚为数字引脚2 int pushButton = 2; // setup()函数:上电或按下复位时仅运行一次,完成初始化 void setup() { // 初始化串口通信,波特率9600,用于串口监视器查看数据 Serial.begin(9600); // 将按键引脚设置为输入模式,用于读取外部电平信号 pinMode(pushButton, INPUT); } // loop()函数:持续无限循环运行 void loop() { // 读取数字引脚2的电平状态(返回值为 HIGH/1 或 LOW/0) int buttonState = digitalRead(pushButton); // 通过串口打印按键状态数值并自动换行 Serial.println(buttonState); // 短暂延时保证数据读取和串口传输稳定 delay(1); }

五、Fade实验测试

5.1硬件连接方式

  • LED 正极(长脚)串联限流电阻(220Ω 左右) → 引脚 9;
  • LED 负极(短脚) → GND;
  • 核心原理:PWM 脉宽调制调光,实现 LED 呼吸渐变效果。

5.2逐行代码详解

/* Fade 渐变呼吸灯程序 本示例使用 analogWrite() 函数,实现9号引脚LED亮度渐变呼吸效果 analogWrite()依靠PWM脉冲宽度调制实现模拟调光,更换引脚时 务必选用支持PWM功能的引脚。Arduino Uno R3上PWM引脚标记有"~": ~3、~5、~6、~9、~10、~11 */ int led = 9; // LED连接到支持PWM的9号引脚 int brightness = 0; // 存储LED亮度值,初始亮度为0(全灭) int fadeAmount = 5; // 每次循环亮度变化步长 // setup()函数:上电/复位时仅运行一次,初始化引脚模式 void setup() { // 将9号引脚设置为输出模式 pinMode(led, OUTPUT); } // loop()函数:无限循环运行,实现亮度渐变 void loop() { // 通过PWM设置LED引脚亮度,参数范围0(全灭)~255(最亮) analogWrite(led, brightness); // 更新亮度值 brightness = brightness + fadeAmount; // 到达亮度边界(0或255)时,反转渐变方向 if (brightness <= 0 || brightness >= 255) { fadeAmount = -fadeAmount; } // 延时30ms,控制渐变速度,让调光效果肉眼可见 delay(30); }

六、ReadAnalogVoltage实验测试

6.1硬件连接方式

方式一:有电位器情况下,电位器中间引脚接 A0,两侧引脚分别接 +5V 和 GND 地。

  • 转动电位器旋钮,A0 引脚电压会在 0V~5V 之间平滑变化,串口数值随之同步变化;
  • 把连续模拟电压0~1023 之间变化转为数字量0-5V;
  • 在 Arduino IDE 打开串口监视器 / 串口绘图器,可实时观察数值变化曲线。

方式二:无电位器情况下,A0引脚可以接 +5V ,+3.3V和 GND 地分别测试。

  • 在 Arduino IDE 打开串口监视器 / 串口绘图器,可实时观察数值变化曲线。

6.2逐行代码详解

/* ReadAnalogVoltage 读取模拟电压程序 读取A0引脚的模拟输入信号,将原始ADC数值换算为实际电压值,并打印到串口监视器 可通过串口绘图器查看电压变化曲线(工具 > 串口绘图器) 接线方法:电位器中间引脚接 A0,两侧引脚分别接 +5V 和 GND 地 */ // setup()函数:上电或按下复位按钮时仅运行一次,完成初始化 void setup() { // 初始化串口通信,波特率设置为9600 Serial.begin(9600); } // loop()函数:无限循环持续运行 void loop() { // 读取A0模拟引脚的原始ADC数值(范围:0 ~ 1023) int sensorValue = analogRead(A0); // 将0~1023的ADC读数换算为真实电压(0~5V) float voltage = sensorValue * (5.0 / 1023.0); // 通过串口打印实际电压值 Serial.println(voltage); }

参考链接:https://docs.arduino.cc/built-in-examples

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询