网站升级 云南省建设注册考试中心/网络推广公司可不可靠
物联网开发学习笔记——目录索引
本章主要介绍在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.xz2. 然后再 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 运行示例程序
在测试之前,请确保您已完成以下准备工作:
-
您已经在电脑里成功安装好Arduino IDE
-
使用USB数据线将开发板与电脑连接好
-
开发板驱动程序已成功安装。
在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
物联网开发学习笔记——目录索引
相关文章:

Ubuntu:Arduino IDE 开发环境配置【保姆级】
物联网开发学习笔记——目录索引 本章主要介绍在Ubuntu系统搭建Arduino IDE 开发环境,windows系统请移步:Windows:Arduino IDE 开发环境配置【保姆级】 参考官网:Arduino - Home 有关更多详细信息,请参阅 Arduino I…...

Kafka 开启SASL/SCRAM认证 及 ACL授权(三)验证
Kafka 开启SASL/SCRAM认证 及 ACL授权(三)验证。 官网地址:https://kafka.apache.org/ 本文说明如何做client验证ACL是否生效,我们之前开启了无acl信息不允许访问的配置。涉及的client有以下几个场景:shell脚本、python脚本、java应用、flink流。 kafka shell script验证…...

Pycharm 2023 设置远程调试
pycharm 版本 : 2023.2.1 整体流程参考:https://blog.csdn.net/xuanhaolaile/article/details/128293254 首先确定远程服务器上已经安装好 requirements.txt 中所需的依赖包。 1、SSH Configurations 添加远程服务器 2、Python Interpreter 注意&…...

asp.net core在其他程序集获取HttpContext
首先在Program.cs中,注册 builder.Services.AddHttpContextAccessor();Program.cs完整代码: using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.CodeAnalysis.CSharp.Syntax; using System.Text.Encodings.Web; using System.Text.Unicode; us…...

UWB NI框架嵌入式实现——Qorvo示例
在Qorvo提供的DW3000示例代码中,实现了与Apple的NI框架的互通的示例,本文中针对其示例程序进行简要的分析。测试中使用Qorvo提供的模块,该模块为nRF52833DW3000的架构。 1. Qorvo相关库文件 Qorvo在提供示例时,仅提供了相关的库文…...

Linux OS源的问题记录
场景 安装了一台Linux虚拟机充当服务器,准备搭建一个elk环境,我使用命令安装docker的时候,报错提示 YumRepo Error: All mirror URLs are not using ftp, http[s] or file.Eg. Invalid release/repo/arch combination/ removing mirrorlist…...

数据库:Hive转Presto(五)
此篇将所有代码都补充完了,之前发现有的代码写错了,以这篇为准,以下为完整代码,如果发现我有什么考虑不周的地方,可以评论提建议,感谢。代码是想哪写哪,可能比较繁琐,还需要优化。 …...

SQL中for xml path 的用法
1. 用法 是一种将查询结果转换为 XML 格式的方法。它可以将查询结果中的每一行转换为一个 XML 元素,并且可以指定元素的名称和属性。 2. 应用示例 有一张学生选修课程的表,如下图所示 希望整合成下图所示效果 --建表 if object_id(StudentInfo,u) is…...

【TensorFlow2 之014】在 TF 2.0 中实现 LeNet-5
一、说明 在这篇文章中,我们将展示如何在 TensorFlow 中实现像 \(LeNet-5\) 这样的基础卷积神经网络。LeNet-5 架构由 Yann LeCun 于 1998 年发明,是第一个卷积神经网络。 数据黑客变种rs 深度学习 机器学习 TensorFlow 2020 年 2 月 29 日 | 0 …...

【2023】redis-stream配合spring的data-redis详细使用(包括广播和组接收)
目录 一、简介1、介绍2、对比 二、整合spring的data-redis实现1、使用依赖2、配置类2.1、配置RedisTemplate bean2.2、异常类 3、实体类3.1、User3.2、Book 4、发送消息4.1、RedisStreamUtil工具类4.2、通过延时队列线程池模拟发送消息4.3、通过http主动发送消息 5、dz…...

飞书应用机器人文件上传
背景: 接上一篇 flask_apscheduler实现定时推送飞书消息,当检查出的异常结果比较多的时候,群里会有很多推送消息,一条条检查工作量会比较大,且容易出现遗漏。 现在需要将定时任务执行的结果记录到文件,…...

高版本Mac系统如何打开低版本的Xcode
这里写目录标题 前言解决方案 前言 大家偶尔也碰见过更新Mac系统后经常发现低版本的Xcode用不了的情况吧.基本每年大版本更新之后都可以在各个开发群里碰见问这个问题的. 解决方案 打开访达->应用程序->选中打不开的那个版本的Xcode并且右键显示包内容->Contents-…...

测试H5需要注意的交互测试用例点
H5(HTML5)是一种用于构建网页的标准,可以实现丰富的交互和功能。测试H5交互通常涉及到验证网页在各种情况下的行为,包括用户输入、按钮点击、页面加载等等。以下是一些可能的H5交互测试用例: 页面加载: 验…...

1014蓝桥算法双周赛,学习算法技巧,助力蓝桥杯
家人们,我来免费给大家送福利了!!! 【1014蓝桥算法双周赛 】 背景 蓝桥杯全国软件和信息技术专业人才大赛是由工业和信息化部人才交流中心举办的全国性IT学科赛事。参赛高校超过1200余所,累计参赛人数超过40万人。该…...

C语言之通讯录的实现篇
目录 test.c 主菜单menu 创建通讯录con 初始化通讯录InitContact 增加个人信息AddContact 展示个人信息ShowContact 删除个人信息DelContact 查找个人信息SearchContact 修改个人信息ModifyContact test.c总代码 contact.h 头文件包含 PeoInfo_个人信息的设置声…...

如何降低海康、大华等网络摄像头调用的高延迟问题(二)
目录 1.RTSP介绍 2.解决办法1 3.解决办法2 1.RTSP介绍 RTSP(Real-time Streaming Protocol)是一种用于实时流媒体传输的网络协议。它被设计用于在服务器和客户端之间传输音频、视频以及其他流媒体数据。 RTSP协议允许客户端通过与服务器建立RTSP会话…...

centos清理日志和缓存
今天使用redmine修改密码,修改报错,再去试试创建用户,创建用户的页面直接报错显示不出来。然后看了一下服务器,发现服务器磁盘空间全部占满了。 CentOS系统也会在使用很长一段时间后出现硬盘空间开始不够的情况,而这并…...

排序算法的稳定性
什么是排序算法的稳定性? 排序算法的稳定性: 假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i] r[j],且 r[i…...

kafka属性说明
kafka中关于一些字段说明 groupId :标识消费者分组id,如果多个消费者id相同,就表示这几个消费者是一组,当一组多个消费者消费同一个topic时,一组中只会有一个成功消费 代码如下 这时只会有一条消息被消费...

STM32F4使用ucosii时操作浮点数卡死的问题
STM32F4使用ucosii时操作浮点数卡死的问题_stm32 fpu float 程序跑不起来_shou撕代码的博客-CSDN博客...

python练习:赋值运算 => 输入身高,体重,求BMI = 体重(kg)/身高(m)的平方。
赋值运算 > 输入身高,体重,求BMI 体重(kg)/身高(m)的平方。 代码: height float(input(‘请输入您的身高(m):’)) weight float(input(‘请输入您的体重(kg):’))…...

PCL ICP精配准(点到点)
文章目录 一、简介二、实现过程三、实现效果参考资料一、简介 迭代最近点(ICP)算法作为是目前最常用的刚性点集配准方法,它有着简单、计算复杂度低等优点,该算法的具体计算过程如下: (1)在目标点云P中取点集 p i ∈ P p_i∈P p...

Redis数据缓存(Redis的缓存击穿和穿透的区别)
Redis是一个高性能的内存中数据存储系统,可以使用它作为数据缓存。使用Redis作为数据缓存可以提高应用程序的性能和可伸缩性,因为Redis运行在内存中,读写速度非常快。 Redis支持许多数据结构,如字符串、哈希表、列表、集合和有序…...

八大排序算法(含时间复杂度、空间复杂度、算法稳定性)
文章目录 八大排序算法(含时间复杂度、空间复杂度、算法稳定性)1、(直接)插入排序1.1、算法思想1.2、排序过程图解1.3、排序代码 2、希尔排序3、冒泡排序3.1、算法思想3.2、排序过程图解3.3、排序代码 4、(简单)选择排序4.1、算法…...

【C++】:引用的概念/引用的特性/常引用/引用的使用场景/传值与传引用的效率比较/引用和指针的区别/内联函数的概念/内联函数的特性
引用的概念 引用不是新定义一个变量,而是给已存在变量取了一个别名,编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间 比如:李逵,在家称为"铁牛",江湖上人称"黑旋风&…...

Python点云处理(十七)点云地面点提取——基于格网算法
目录 0 简述1 算法流程2 优缺点3 实现4 效果5 结语0 简述 提取地面点是点云数据分析和处理中的重要任务,而点云格网法是一种常用的地面点提取方法。点云格网法(Grid-based Method),通过将点云数据划分为网格单元,根据高程值分析来实现地面点的提取。 1 算法流程 步骤1:…...

Flink 中kafka broker缩容导致Task一直重启
背景 Flink版本 1.12.2 Kafka 客户端 2.4.1 在公司的Flink平台运行了一个读Kafka计算DAU的流程序,由于公司Kafka的缩容,直接导致了该程序一直在重启,重启了一个小时都还没恢复(具体的所容操作是下掉了四台kafka broker࿰…...

纯前端js中使用sheetjs导出excel,并且合并标题
先定义变量----用的是Vue2 ,以下在vue的data:{}中定义--------------//空格占位符 headerTopTitle: [患者信息, , , , , , , , , 入出院信息, , , , , , , 病案首页中的出院主要诊断, ,出院其他诊断(病案首页中原始信息), , , , ,…...

猫眼 校园招聘_1面
(1)打包和构建工具 vite 和 webpack 功能 1. 构建原理: Webpack 是一个静态模块打包器,通过对项目中的JavaScript、css、Image 等文件进行分析,生成对应的静态资源,并且通过一些插件和加载器来实现各种功…...

博弈论——博弈信息结构
博弈信息结构 0 引言 在一个博弈构成中,博弈信息结构是不可或缺要素。博弈信息,顾名思义,就是在博弈中,博弈方对于信息的了解。知己知彼,百战不殆。和短兵相接的战争一样,只有充分了解自己的优劣势&#x…...