Ubuntu:Arduino IDE 开发环境配置【保姆级】

news/2024/7/16 10:21:34 标签: ide, iot, ubuntu

物联网开发学习笔记——目录索引

本章主要介绍在Ubuntu系统搭建Arduino IDE 开发环境,windows系统请移步:Windows:Arduino IDE 开发环境配置【保姆级】

参考官网:Arduino - Home

有关更多详细信息,请参阅 Arduino IDE 2.0 文档。Arduino IDE 是开源的,其源代码托管在GitHub上。

我本人大部分时间都是直接使用Ubuntu系统,如您不想直接安装ubuntu系统,请先参考使用VirtualBox安装Ubuntu系统【保姆级】。

工欲善其事必先利其器,下面开始Ubuntu系统Arduino IDE 开发环境配置之路。

备注:此文档使用的Ubuntu系统为Ubuntu 20.04 LTS

一、Arduino IDE 下载

点击【SOFTWATE】

点击【Linux】软件版本下载

点击【JUST DOWNLOAD】下载

考虑到国内访问比较慢,我已经把软件上传到百度网盘

链接:百度网盘 请输入提取码
提取码:test  目录:IOT-IDE -> Arduino-IDE -> linux

文件:arduino-ide_2.2.1_Linux_64bit.zip  和 arduino-ide_2.2.1_Linux_64bit.AppImage

二、Arduino IDE 安装

有两种方式:

1. 使用 arduino-ide_2.2.1_Linux_64bit.zip 安装

先解压:

$ unzip arduino-ide_2.2.1_Linux_64bit.zip

执行:./arduino-ide

$ cd arduino-ide_2.2.1_Linux_64bit
$ ./arduino-ide

 启动Arduino-IDE, 在这个界面,请耐心等待

启动完成,进入如下界面:

2. 使用arduino-ide_2.2.1_Linux_64bit.AppImage安装

给arduino-ide_2.2.1_Linux_64bit.AppImage文件可执行权限

$ chmod a+x arduino-ide_2.2.1_Linux_64bit.AppImage

然后直接执行./arduino-ide_2.2.1_Linux_64bit.AppImage

 ./arduino-ide_2.2.1_Linux_64bit.AppImage

在如下窗口,点击【Agree】 

3. 其他arduino版本安装方法

注意:其他版本安装方式可能会有一些不一样,如arduino-1.8.19-linux64.tar.xz

1. xz -d xxx.tar.xz 解压成 xxx.tar 格式文件
$ xz -d arduino-1.8.19-linux64.tar.xz

2. 然后再 tar -xvf xxx.tar 解压文件
$ tar -xvf arduino-1.8.19-linux64.tar

解压后

1. 进入arduino-1.8.19/
$ cd arduino-1.8.19/

2. 执行./install.sh 安装
$ $ sudo ./install.sh

安装完成后,直接命令行输入arduino运行

$ arduino 

运行界面:
 

4. 语言配置,可以根据自己喜好配置。

三、Arduino IDE 中安装开发板

这部分和

从 1.6.4 开始,Arduino 允许使用 Boards Manager 安装第三方平台软件包。

这个小结介绍在Arduino IDE中添加开发板,我目前手上有esp8266和esp32开发板,所有我就已添加esp8266/esp32开发板为例,进行详细的介绍。

1. 安装esp8266开发板

参考:GitHub - esp8266/Arduino:Arduino 的ESP8266核心

首先介绍esp8266开发板的安装,打开Arduino IDE “首选项”

英文:点击【File】-> 【Preferences】

中文:点击【文件】-> 【首选项】

在Arduino IDE的“首选项”对话框中找到“其他开发板管理地址” 

英文:点击【Additional boards manager URLs】

中文:点击【其他开发板管理地址

将以下网址复制并且黏贴到到Additional boards manager URLs”/“其他开发板管理地址” 栏中,并点击OK

http://arduino.esp8266.com/stable/package_esp8266com_index.json

 点击【OK】后,会提示“正在下载package_esp8266com_index.json索引”等待下载完成,打开Arduino IDE的“开发板管理器”

英文:点击【Tools】-> 【Board】-【boards manager 】

中文:点击【工具】-> 【开发板】->【开发板管理器】

在“开发板管理器”的搜索栏中输入“esp8266”

 

确认是否成功安装“esp8266”开发板,如果提示【已安装】表示已经安装成功

英文界面:

中文界面:

 2. 安装esp32系列开发板

参考:Welcome to ESP32 Arduino Core’s documentation — Arduino-ESP32 2.0.6 documentation

基本和【1. 安装esp8266开发板】类似,在Arduino IDE的“首选项”对话框中找到“其他开发板管理地址” 并添加如下地址

  • 稳定版发布链接:

    https://espressif.github.io/arduino-esp32/package_esp32_index.json
    
  • 开发发布链接:

    https://espressif.github.io/arduino-esp32/package_esp32_dev_index.json

    四、Arduino IDE 运行示例程序

    在测试之前,请确保您已完成以下准备工作:

  1. 您已经在电脑里成功安装好Arduino IDE

  2. 使用USB数据线将开发板与电脑连接好

  3. 开发板驱动程序已成功安装。

在Arduino IDE的开发板菜单中找到您的开发板,如我使用的esp8266开发板是【NodeMCU 1.0 (ESP-12E module)】,您需要根据自己所使用开发板的实际情况选择。

设置Arduino IDE的开发板端口,您需要根据自己所使用开发板的实际情况选择。

假如您不知道如何查看开发板连接的端口号,请看备注查看开发板端口号

打开Blink示例程序

将Blink示例程序编译上传给esp8266【NodeMCU 1.0 (ESP-12E module)】开发板

注意:如上传的时候arduino出现Permission denied: '/dev/ttyUSB0'错误

主要错误信息:

SerialException: [Errno 13] could not open port /dev/ttyUSB0: [Errno 13] Permission denied: '/dev/ttyUSB0'
Cannot connect to Arduino!

解决方案:

打开终端并执行以下命令:
sudo usermod -a -G dialout $USER

然后重新插拔usb或重新启动Arduino IDE,再次运行上传。

 确认开发板上LED开始闪烁 
程序上传完毕,如果看到开发板上的LED开始闪烁说明Blink示例程序编译上传成功。恭喜您现在可以用Arduino IDE为开发板编写控制程序了。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

备注

查看开发板端口号

1. 首先电脑和开发板使用usb数据线相连

2. 查看开发板连接的端口号

Ubuntu 20.04 LTS系统默认自动usb转串口驱动程序,使用如下命令参考端口号

$ ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 10月 15 15:45 /dev/ttyUSB0

参考资料

Arduino官网:Arduino - Home

GitHub - esp8266/Arduino: ESP8266 core for Arduino

乐鑫官网:Getting Started — Arduino-ESP32 2.0.6 documentation

物联网开发学习笔记——目录索引


http://www.niftyadmin.cn/n/5092778.html

相关文章

Linux:进程控制

目录 一、进程创建 写时拷贝 二、进程终止 echo $? 如何终止进程 _exit与exit 三、进程等待 进程等待的必要性 进程等待的操作 wait waitpid status 异常退出情况 status相关宏 options 四、进程程序替换 1、关于进程程序替换 2、如何进行进程程序替换 程序…

JavaScript解密:《异人之下》故事中的编码之谜

背景介绍 《异人之下》描绘了一个充满神秘和异能力量的世界,隐藏着许多谜题和未知的秘密。在这个世界中,保护和解密数据是至关重要的,就像在JavaScript中确保数据的安全和保密性一样重要。 角色介绍 1. 林天宇 林天宇是一个勇敢而机智的角…

Msys下编译 TensorFlow

安装基本工具 pacman -S --needed zip unzip patch diffutils git 下载安装 Windows 版本 bazel 6.1.2,复制到 C:/Windows/system32 目录下 wget https://github.com/bazelbuild/bazel/releases/download/6.1.2/bazel-6.1.2-windows-x86_64.exe## 国内镜像 wget…

云上攻防-云原生篇K8s安全Config泄漏Etcd存储Dashboard鉴权Proxy暴露

文章目录 云原生-K8s安全-etcd未授权访问云原生-K8s安全-Dashboard未授权访问云原生-K8s安全-Configfile鉴权文件泄漏云原生-K8s安全-Kubectl Proxy不安全配置 云原生-K8s安全-etcd未授权访问 攻击2379端口:默认通过证书认证,主要存放节点的数据&#x…

【力扣1844】将所有数字用字符替换

👑专栏内容:力扣刷题⛪个人主页:子夜的星的主页💕座右铭:前路未远,步履不停 目录 一、题目描述二、题目分析 一、题目描述 给你一个下标从 0 开始的字符串 s ,它的偶数下标处为小写英文字母&am…

RabbitMQ从0到1完整学习笔记一:《基础篇》

目录 启篇 一、初识MQ 1.1 同步调用 1.2异步调用 1.3 技术选型 二、RabbitMQ 架构 2.2 收发消息 2.2.1 交换机 2.2.2 队列 2.2.3 绑定关系 2.2.4 发送消息 2.3 数据隔离 2.3.1 用户管理 2.3.2 virtual host 三、SpringAMQP 3.1 案例入门 3.1.1 导入依赖 3.1.2 消息发送 3.1.2 消…

ChatGPT AIGC 完成Excel跨多表查找操作vlookup+indirect

VLOOKUP和INDIRECT的组合在Excel中用于跨表查询,其中VLOOKUP函数用于在另一张表中查找数据,INDIRECT函数则用于根据文本字符串引用不同的工作表。具体操作如下: 1.假设在工作表1中,A列有你要查找的值,B列是你希望查询的工作表名称。 2.在工作表1的C列输入以下公式:=VLO…

机器学习 | Python实现GA-XGBoost遗传算法优化极限梯度提升树特征分类模型调参

机器学习 | Python实现GA-XGBoost遗传算法优化极限梯度提升树特征分类 目录 机器学习 | Python实现GA-XGBoost遗传算法优化极限梯度提升树特征分类基本介绍模型描述程序设计参考资料基本介绍 XGBoost的核心算法思想基本就是: 不断地添加树,不断地进行特征分裂来生长一棵树,每…