在Ubuntu系统上安装Arduino IDE | AI生成和翻译

Home 2025.06

在 Ubuntu Linux 系统上安装 Arduino IDE,请按照以下步骤操作:

  1. 下载 Arduino IDE
    • 访问 Arduino 官方网站 https://www.arduino.cc/en/software
    • 在 “Arduino IDE” 部分,选择 “Linux 64 位” 下载选项(或适合您系统的版本,例如树莓派选择 Linux ARM 版本)。
  2. 解压下载的文件
    • 下载的文件是压缩格式 .tar.xz(例如 arduino-1.8.19-linux64.tar.xz)。
    • 打开终端并进入下载目录(例如 cd ~/Downloads)。
    • 使用以下命令解压文件:
      tar -xf arduino-*.tar.xz
      
    • 这将创建一个类似 arduino-1.8.19 的文件夹。
  3. 移动到合适目录(可选)
    • 如需系统级访问,可将解压的文件夹移至 /opt(需要超级用户权限):
      sudo mv arduino-1.8.19 /opt/arduino
      
  4. 运行安装脚本
    • 进入 Arduino 文件夹:
      cd /opt/arduino
      
    • 运行安装脚本:
      sudo ./install.sh
      
    • 这将创建桌面快捷方式并设置必要的权限。
  5. 将用户加入 dialout 组
    • 为通过串口访问 Arduino 板,需将用户加入 dialout 组:
      sudo usermod -a -G dialout $USER
      
    • 注销后重新登录,或重启系统使组变更生效。
  6. 启动 Arduino IDE
    • 若已运行 install.sh 脚本,可通过应用程序菜单或搜索 “Arduino IDE” 启动。
    • 也可直接从终端运行:
      /opt/arduino/arduino
      
  7. 更新 Arduino 板权限(如需要)
    • 连接 Arduino 时确保系统识别(如 /dev/ttyACM0/dev/ttyUSB0)。
    • 若遇权限问题,设置正确权限:
      sudo chmod a+rw /dev/ttyACM0
      
    • /dev/ttyACM0 替换为实际端口。
  8. 验证安装
    • 通过 USB 连接 Arduino 板。
    • 打开 IDE,进入 工具 > 开发板 选择 Arduino 型号(如 Arduino Uno)。
    • 进入 工具 > 端口 选择端口(如 /dev/ttyACM0)。
    • 尝试上传示例程序(如 文件 > 示例 > 01.Basics > Blink)确认功能正常。

替代方案:通过 Snap 或 Flatpak 安装

注意事项

若遇问题,请告知您的 Ubuntu 版本或具体错误信息以便针对性协助!


既然您的 Arduino Uno 已在 Ubuntu 系统的 Arduino IDE 中识别,且您希望使用无需面包板或外部元件的简单示例,这里提供一个使 Arduino Uno 板上 LED(连接至数字引脚 13)闪烁的基础程序。此示例无需额外硬件。

void setup() {
  // 初始化设置代码,仅运行一次:
  pinMode(LED_BUILTIN, OUTPUT); // 将板上 LED 引脚(引脚13)设置为输出模式
}

void loop() {
  // 主循环代码,重复运行:
  digitalWrite(LED_BUILTIN, HIGH); // 点亮 LED
  delay(1000);                     // 等待 1 秒
  digitalWrite(LED_BUILTIN, LOW);  // 熄灭 LED
  delay(1000);                     // 等待 1 秒
}

运行方法:

  1. 打开 Arduino IDE。
  2. 将以上代码复制粘贴到 IDE 中。
  3. 确保 Arduino Uno 已通过 USB 连接并被识别:
    • 进入 工具 > 开发板 选择 Arduino Uno
    • 进入 工具 > 端口 选择对应端口(如 /dev/ttyACM0/dev/ttyUSB0)。
  4. 点击 上传 按钮(右箭头图标)编译程序并上传至 Arduino Uno。
  5. 上传完成后,板上 LED(标有 “L” 的指示灯)将以 1 秒间隔持续闪烁。

程序功能:

注意事项:

若遇到问题或需要其他简单示例,请随时告知!


错误信息表明在 Ubuntu 系统上传程序到 Arduino Uno 时出现权限问题。Arduino IDE 因权限不足无法访问串口 /dev/ttyUSB0。以下是解决方案:

解决方案:修复串口权限

  1. 将用户加入 dialout
    • Ubuntu 中 dialout 组通常控制串口访问权限。将用户加入该组:
      sudo usermod -a -G dialout $USER
      
    • 执行后需注销重新登录,或重启系统使变更生效:
      sudo reboot
      
  2. 验证端口
    • 重启后重新连接 Arduino Uno 并打开 Arduino IDE。
    • 进入 工具 > 端口 确保已选择 /dev/ttyUSB0(部分 Arduino 板可能为 /dev/ttyACM0)。若未显示端口,请检查 USB 连接或更换数据线/接口。
  3. 临时修改端口权限(可选)
    • 若加入用户组后问题仍存,可手动设置端口权限(此为临时方案,重启后权限重置):
      sudo chmod a+rw /dev/ttyUSB0
      
    • 如端口不同请替换 /dev/ttyUSB0(例如 /dev/ttyACM0)。
  4. 重新尝试上传
    • 在 Arduino IDE 中点击 上传 按钮上传程序(如之前的 LED 闪烁程序)。
    • 若上传成功,Arduino Uno 板上 LED 应开始闪烁。

额外故障排除

确认修复

权限问题解决后,重新尝试上传闪烁程序:

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);
  delay(1000);
  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);
}

若问题依旧存在,请提供新错误信息或在终端运行 ls -l /dev/ttyUSB0 并提供输出以便进一步诊断。


检测到您在 Ubuntu 系统使用 Arduino IDE 向 Arduino Uno 上传程序时遇到问题。您提供的错误信息为:

avrdude: ser_open(): can't open device "/dev/ttyUSB0": Permission denied
Failed uploading: uploading error: exit status 1

该错误表明 Arduino IDE 缺乏访问 Arduino Uno 所连接串口(/dev/ttyUSB0)的必要权限。这是 Linux 系统(如 Ubuntu)因串口访问管理机制导致的常见问题。以下为逐步解决指南。


解决方案:修复串口权限问题

1. 将用户加入 dialout

Ubuntu 中 dialout 组控制串口访问权限。需将用户加入该组以解决权限问题。

2. 注销后重新登录

为使组变更生效,需注销当前会话后重新登录。亦可重启系统。

3. 验证串口

重新登录后,确保系统正确识别 Arduino Uno。

4. 重新上传程序

选择正确端口后,重新尝试上传程序:

void setup() {
  pinMode(LED_BUILTIN, OUTPUT); // 设置板上 LED 引脚(引脚13)为输出模式
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH); // 点亮 LED
  delay(1000);                     // 等待 1 秒
  digitalWrite(LED_BUILTIN, LOW);  // 熄灭 LED
  delay(1000);                     // 等待 1 秒
}

额外故障排除

若上述步骤未解决问题,请尝试以下补充检查:

检查组成员身份

验证用户是否已加入 dialout 组:

临时权限修复(不建议长期使用)

如需快速解决,可手动修改串口权限:

检查冲突软件

部分软件(如盲文显示器驱动 brltty)可能干扰串口。可移除该软件:

验证 Arduino 连接

确保 Ubuntu 识别您的 Arduino:

以 Root 权限运行 Arduino IDE(临时方案)

作为最后手段,可使用超级用户权限运行 IDE:


确认修复

完成这些步骤后,您的程序应能成功上传,Arduino Uno 板上 LED 将按预期闪烁。若问题仍然存在,请提供以下补充信息:

若需进一步协助,请随时告知!


Back Donate