两个都 Arduino 和 覆盆子pi 广泛用于 DIY电子,机器人技术和物联网项目。但是,初学者甚至有经验的用户经常遇到常见错误。本指南涵盖 频繁的问题 和他们 解决方案 对于两个平台。
1。常见的Arduino错误和修复
1.1。 Arduino不连接到计算机
✅ 错误: “未检测到的板”或“找不到COM端口”。
🔹 可能的原因:
- 故障 USB电缆 (特别是仅动力电缆)。
- 选定错误的板 在Arduino IDE中。
- 缺少或 腐败的驱动程序 (视窗)。
🔧 使固定:
- 使用 不同的USB电缆 (确保是 数据电缆).
- 打开 Arduino IDE→工具→板 并选择正确的板。
- 检查 com端口 在下面 工具→端口.
- 安装/更新 USB驱动程序 为您的董事会:
- 对于Arduino Uno/Nano(CH340芯片组):安装 CH340驱动程序.
-
对于Arduino Mega/官方UNO:安装 Arduino USB驱动程序 从
arduino.cc
.
1.2。 Arduino草图不上传
✅ 错误: “ avrdude:stk500_recv():程序员没有响应”
🔹 可能的原因:
- 错误的 选定的COM端口或板.
- 使用代码 串行监视器 错误。
- 一个 冲突设备 已连接到 RX/TX引脚.
🔧 使固定:
- 拔下所有设备 从 引脚0和1(RX/TX).
- 确保正确 董事会和COM端口 在Arduino IDE中选择。
- 按住重置按钮 在IDE中单击“上传”时。
- 尝试上传a 简单的眨眼草图 验证董事会是否有效。
1.3。 “低内存”或“素描太大”错误
✅ 错误: “草图使用了99%的程序存储空间。可用的低内存。”
🔹 可能的原因:
- 图书馆太多 包括。
- 大变量阵列 拿起公羊。
- 使用浮点操作 过度。
🔧 使固定:
- 消除 未使用的库 并优化您的代码。
- 使用 较小的数据类型 (
byte
而不是int
如果可能的话)。 - 存储大型文字/阵列 Progmem(闪存) 而不是公羊。
1.4。传感器不使用Arduino
✅ 错误: 传感器不会返回数据或返回错误的值。
🔹 可能的原因:
- 错误的接线 或不正确 I2C/SPI连接.
- 不正确的库 或错 地址 在代码中。
🔧 使固定:
- 查看 传感器接线 使用数据表。
- 使用
Wire.h
并运行这个 I2C扫描仪 检测设备:#include <Wire.h> void setup() { Serial.begin(115200); Wire.begin(); Serial.println("Scanning..."); for (byte address = 8; address < 120; address++) { Wire.beginTransmission(address); if (Wire.endTransmission() == 0) { Serial.print("Found I2C device at 0x"); Serial.println(address, HEX); } } } void loop() {}
- 确保 传感器库 匹配您的模型。
1.5。 PWM不用某些引脚
✅ 错误: AnalogWrite()在某些引脚上不起作用。
🔹 可能的原因:
- 并非所有引脚支撑 PWM输出.
- 使用多个PWM设备时,计时器会发生冲突。
🔧 使固定:
- 检查Arduino PWM引脚 为您的董事会。
- 使用替代方案 PWM引脚 如果一个人不起作用。
- 如果使用 伺服或其他PWM设备,尝试一个 伺服库 而不是
analogWrite()
.
2。常见的覆盆子PI错误和修复
2.1。覆盆子pi不启动
✅ 错误: 黑屏或红色LED卡在上面。
🔹 可能的原因:
- 腐败 microSD卡.
- 不足的 电源.
🔧 使固定:
- 使用 高质量的SD卡(16GB或更高,第10类).
- 使用卡 覆盆子Pi成像仪 使用最新操作系统。
- 使用 5V/3A功率适配器 (低功耗适配器会导致引导故障)。
2.2。无HDMI显示输出
✅ 错误: 显示器上的“无信号”或黑屏。
🔹 可能的原因:
- 不正确 HDMI电缆或端口.
- 错误的 解决方案设置.
🔧 使固定:
- 尝试使用 HDMI-0 (在覆盆子PI 4上)而不是HDMI-1。
- 将以下内容添加到
/boot/config.txt
:hdmi_force_hotplug=1 hdmi_drive=2 hdmi_group=1 hdmi_mode=16
- 使用 不同的HDMI电缆或监视器.
2.3。 Wi-Fi不从事Raspberry Pi
✅ 错误: 无法经常连接到Wi-Fi或Wi-Fi掉落。
🔹 可能的原因:
- 信号弱或 错误的国家环境.
- 节能模式 禁用Wi-Fi.
🔧 使固定:
- 设置正确的 Wi-Fi国家 在
raspi-config
. - 禁用Wi-Fi节省功率:
添加之前sudo nano /etc/rc.local
exit 0
:iw dev wlan0 set power_save off
2.4。 “无法打开端口 /dev /ttys0”(UART错误)
✅ 错误: 无法与串行设备(例如GPS,Arduino)通信。
🔹 可能的原因:
- 串行控制台干扰UART。
🔧 使固定:
-
禁用串行控制台:
sudo raspi-config
- 去 接口选项→串行端口
- 禁用登录外壳 启用串行端口.
-
重新启动并检查端口:
ls /dev/serial*
2.5。 GPIO引脚不响应
✅ 错误: GPIO引脚不会高/低切换。
🔹 可能的原因:
- 错误的GPIO编号 在脚本中。
- 冲突的服务(例如,使用 I2C或SPI 在同一引脚上)。
🔧 使固定:
- 使用正确的 BCM引脚编号:
import RPi.GPIO as GPIO GPIO.setmode(GPIO.BCM) # NOT GPIO.BOARD
- 检查是否 I2C或SPI 已启用并使用相同的引脚。
- 运行以下以重置GPIO状态:
sudo gpio reset
最后的想法
两个都 Arduino 和 覆盆子pi 是强大的工具,但错误可能会令人沮丧。通过遵循这些故障排除步骤,您可以 快速识别并解决常见问题 在您的项目中。
如果您面对任何 具体问题,随时在评论中询问! 🚀