Arduino工程的创建和实例使用

news2024/11/27 6:36:55

下载安装

网址:https://www.arduino.cc/en/software,如下图,选择合适的版本下载使用
在这里插入图片描述

下载后直接安装就行

因为这是一个完全开源免费的软件不需要破解,只需要注意安装目录就行
可以参考https://blog.csdn.net/impossible_Jesse/article/details/125807705,但下载IDE直接去官网下就好

配置使用的环境(以esp8266为例)

个人使用一个简单的wifi模块esp8266,在Arduino中也是NodeMCU
打开IDE(集成开发环境(,Integrated Development Environment )后,这里下载当前官网最新的ide,出现了报错,这个和python真的像啊。然后修改语言“file/preference”,也可以CTRL+逗号,弹出首选项窗口,修改语言就行。
在这里插入图片描述
下图是修改过语言后,中文时修改的位置是一样的
在这里插入图片描述
在下面”首选项/附加开发板管理器网址“写入http://arduino.esp8266.com/stable/package_esp8266com_index.json当然对于不同的开发板就会有不同的管理网址。不同的库需要对应的管理网址,否则想要安装新的开发板固件库时会搜索不到

安装esp8266的开发板的固件库(SDK)

推荐下载网站:https://arduino.me/download
需要注意,先设置首选项弹出框中的附加开发板管理网址正确,例如,想要使用esp32的库就必须写https://dl.espressif.com/dl/package_esp32_index.json,否则**”开发板管理器“中可能就找不到esp32**。例如若只写了http://arduino.esp8266.com/stable/package_esp8266com_index.json,那么就在”开发板管理器“中无法找到esp32
在这里插入图片描述
在这里插入图片描述

直接点击”安装“,这个国外网站的库是真的慢,且最后很可能还不成功(如上图输出)。可以点击”更多信息“,自动弹出到github的网页,可以下载对应的库文件(速度就看使用什么方法了,1,可以使用git或者其他镜像,2,把github工程fork到自己GitHub账号,使用gitee将你的github保存到gitee,再下载,3,修改host,但需要每次从网上查找可以访问GitHub的IP,还需要修改自己的HOST.。4,校园网等特殊网络)。

快速打开github的一个插件

https://fhefh2015.github.io/Fast-GitHub/

离线安装开发固件库1,使用exe文件安装

一个比较好下载的中文社区https://arduino.me/download
最终下载了,esp8266_package_3.0.2_arduinocn.exe,然后双击就可安装,最终安装到了,c:\Users\Administrator\AppData\Local\Arduino15\packages这个和安装路径无关,(个人自己把安装路径修改在D盘但c盘依然会出现这个路径),也有可能和安装版本有关。
在这里插入图片描述
在这里插入图片描述
第一次安装好SDK库后一定要把IDE重启,否则新安装的SDK库无法生效。
在这里插入图片描述

离线安装ESP8266开发板硬件库2

整体思路就是把从Github下载的zip固件库解压到c:\Users\Administrator\AppData\Local\Arduino15\packages的一个文件夹中,这个文件夹可以自己命名。从新启动IDE后按照上面一样的配置开发板的就会发现读取的是自己命名文件夹。
在这里插入图片描述

选择开发板库及页面介绍

选择开发板,

在这里插入图片描述

调用内部实例,如下图

在这里插入图片描述

IDE界面介绍和使用

在这里插入图片描述

新版查看预定义变量方便很多

在这里插入图片描述

将一个程序下载到Arduino的整体流程

 1. 连接好硬件
 2. 安装好对应开发板的SDK(硬件库)
 3. 选择好正确的开发板,和正确的COM口(很简单,连接上硬件应该就自动连接),
 4. 打开实例程序,或自己编写好的程序
 5. 点击IDE中的左上角一个右箭头的标志,上传程序,就是把程序写入到开发板(有时候需要复位(串口读取时)板子才能正常执行显示)

查看com口很简单,打开设备管理器,连接好开发板,安装开发板驱动(一般是ch340)应该就能看到现实的口
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/153560.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kubernetes(k8s) 笔记总结(三)

提示:针对kubernetes的服务网络学习。 文章目录一、Kubernetes的 Service服务发现 ClusterIP方式1. Service 介绍2. Service 暴露ClusterIP的方式(集群内部访问)3. Service 暴露NodePort方式(集群外也可以访问)二、Kubernets 之 Ingress1. Ingress 介绍2. Ingress 安…

十一、51单片机之串口通信

1、通信的关键 (1)事先约定。通信之前规定好的,如通信速率,起始信号,结束信号等。 (2)通信传输的基本信息单元。 (3)信息的编码、传输、解码。 2、通信相关的概念 2.1、同步和异步 (1)同步通信要求接收端时钟频率与发送端时钟频率一致&a…

【Python爬虫项目实战】Python爬虫采集弹幕数据

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、开发工具二、环境搭建三、数据来源查询分析四、代码实现1. 发送请求2.设置编码格式3.解析数据4.保存数据总结前言 今天给大家介绍的是Python爬虫采集弹幕数…

django项目中使用logging记录日志

前提 基于已有项目https://blog.csdn.net/qq_38122800/article/details/128583379?spm1001.2014.3001.5502 1、修改settings.py 在settings.py文件中添加如下代码: 先导入模块: import os,time#配置日志cur_path os.path.dirname(os.path.realpath(__file__)) # log_pat…

Vue3——第九章(依赖注入:provide、inject)

一、Prop 逐级透传问题 通常情况下,当我们需要从父组件向子组件传递数据时,会使用 props。如果需要给深层子组件传递数据,会非常麻烦,如下图: provide 和 inject 可以帮助我们解决这一问题。一个父组件相对于其所有的…

【memcpy和memove函数的详解】

1.memcpy函数详解 模拟实现memcpy函数 2.memmove函数详解 模拟实现memmove函数 memset函数详解 memcpy函数 了解一个函数,就查询该函数的相关信息 memcpy函数在库中的声明如下: void * memcpy ( void * destination, const void * source, size_…

Node.js安装与编写

Node.js是JavaScript运行环境,是可以让JavaScript运行在服务端的开发平台。 Node.js对一些特殊用例进行优化,提供替代的API。 Node.js本质上是为文件系统、数据库之类的资源提供接口。 Node.js是单线程的,通过事件循环(event l…

05【JSP-MVC】

文章目录05【JSP-MVC】一、JSP简介1.1 JSP概述1.1.1 HTML和Servlet的弊端1.1.1 什么是JSP1.2 JSP体验:1.2.2 JSP的执行过程1.2.2 JSP和Servlet是什么关系?二、JSP的脚本元素2.1 JSP中的注释:2.2 JSP脚本表达式2.3 JSP代码片段2.4 JSP声明2.5 …

数字音频接口DAI之I2S/PCM

I2S/PCM数字音频接口概述数字音频接口DAI,即Digital Audio Interfaces,顾名思义,DAI表示在板级或板间传输数字音频信号的方式。相比于模拟接口,数字音频接口抗干扰能力更强,硬件设计简单,DAI在音频电路设计…

深度学习——循环神经网络RNN(笔记)

循环神经网络RNN:对于序列模型的神经网络 1.回顾:潜变量自回归模型 使用潜变量ht总结过去的信息 ①xt跟当前的ht和x(t-1)相关 ②ht跟ht-1和xt-1相关 ③n元语法模型中,单词xt在时间t的条件概率取决于前面n-1个单词 隐藏层和隐藏状态的区别…

【ESP32Cam项目1】:ESP32Cam人脸检测(ArduinoESP32底层、Python版opencv)

人脸检测项目效果图: 人脸检测效果视频: 暮年的主页 - 抖音 (douyin.com) 人脸检测项目目标: 大家好!近期拿到了便宜的ESP32Cam开发板,摄像头让我想起来人脸识别,于是ESP32Cam人脸检测项目由此诞生。后期还…

一文总结ACE代码框架

一、前言ACE_Engine框架是OpenAtom OpenHarmony(简称“OpenHarmony”)的UI开发框架,为开发者提供在进行应用UI开发时所必需的各种组件,以及定义这些组件的属性、样式、事件及方法,通过这些组件可以方便进行OpenHarmony…

JavaScript面试题

目录1.★★ 介绍一下JS的内置类型有哪些?2.★★★★ 介绍一下 typeof 区分类型的原理3.★★★ 介绍一下类型转换4.★★★★ 说说你对 JavaScript 的作用域的理解。什么是作用域链?5.★★ 解释下 let 和 const 的块级作用域6.★★★★ 说说你对执行上下文…

用Vue+Nodejs+Axios+express连接Sqlserver做一个动态网页demo

文章目录一、主要工具二、流程2.1. 安装Node2.2. 新建Vue工程并启动2.3. 前后端通信2.3.1. 修改前端2.3.2. 用axios来发起请求2.3.3. 创建服务端程序一、主要工具 Vue做前端页面Nodejs做服务器后端(Nodejs是一个JS的运行环境,可以让JS像其它后端语言一样…

使用超体素上下文和基于图的优化从MLS点云对城市地区的树木进行实例分割

Abstract 在本文中,开发了一种用于从城市场景中的 MLS 数据集中提取树木的实例分割方法。所提出的方法利用超体素结构来组织点云,然后从超体素的局部上下文中提取去除趋势的几何特征。结合局部上下文的去趋势特征,将采用随机森林&#xff08…

Qt基于CTK Plugin Framework搭建插件框架--创建插件

文章目录一、前言二、工程搭建2.1、新建Qt工程2.2、CTK环境配置三、CTK Plugin Framework使用3.1、主函数启动插件框架3.2、插件的创建3.3、插件的使用一、前言 CTK保姆级编译教程:https://blog.csdn.net/Mr_robot_strange/article/details/128547331?spm1001.201…

JavaGUI:多功能计算器(五)--Swing实现双语数据包+菜单切换(完整源码)

JavaGUI:多功能计算器(五)–Swing实现双语数据包菜单切换(完整源码) 【背景提示】 “软件国际化”就是实现多种语言显示切换。 1.在前端网页上,可通过探测本地化语言环境实现自动切换; 2.在操…

C++ 20 原子引用 (一)

C 20 原子引用 (一) std::atomic_ref{} std::atomic_ref类型对其引用的对象进行原子操作。 使用std::atomic_ref 进行多线程读写时不会造成数据争用。被引用对象的生命周期必须超过std::atomic_ref 。操作std::atomic_ref 的子对象是未定义行为。 错…

Docker版RabbitMQ安装延迟队列插件及延迟队列项目应用实战

前言 在项目中经常有延迟业务处理的背景,此时可以借助于Rabbitmq的延迟队列进行实现,但Rabbitmq本身并不支持延迟队列,但可以通过安装插件的方式实现延迟队列 环境准备 首先确认目前项目使用的Rabbitmq的版本,这里博主的版本是3.…

STM32系列(HAL库)——使用ESP8266-01S物联网模块连接Onenet云平台上报DHT11温湿度

前言 本篇主要讲解如何使用ESP8266-01S物联网模块连接Onenet云平台,并上报DHT11模块的温湿度数据。本文单片机主控采用STM32F405RGT6,使用其他主控的话基本要求有2个串口,一个串口用于调试使用,另一个用于ESP模块通讯。 一、前…