当前位置: 首页 > news >正文

NodeMCU ESP8266开发流程详解(图文并茂)

文章目录

  • 整体架构
  • 打开软件
    • setup
    • loop
  • 连接开发板
    • CP2102版本
    • CH340版本
  • 下载
  • 结论

整体架构

NodeMCU ESP8266基于Arduino IDE的开发相对来说还是比较容易上手的,我们基本需要以下几个东西;

  • 一台安装好Arduino IDE的PC,并且已经部署环境(安装好开发板的串口驱动);
  • NodeMCU ESP8266 开发板;
  • USB线(根据实际开发板的情况,本文需要Micro-USB的线);

具体如下图所示;

架构

打开软件

本文默认使用的是Arduino 2.2.1,打开软件之后的界面如下图所示;

软件界面
这里的代码主要分为两个部分,setuploop,学过C语言的同学应该知道,这是两个函数;

下面我们简单介绍一下这两个函数的作用;

setup

这个函数中的代码只会运行一次,通常将设备的初始化设置放在这里。

loop

这个函数会循环运行,通常将应用的主要逻辑代码放在这个函数里。

连接开发板

Micro USB线将电脑和开发板连接起来,前面有文章里有提到过,需要保证串口驱动正常安装,否则电脑会提示无法识别USB设备。

注意:目前市面上NodeMCU ESP8266 DevKit 1.0 板载有CH340和CP2102两个版本,所以这里要注意甄别;

具体的驱动安装在这篇文章中已经有做介绍;
NodeMCU ESP8266基于Arduino IDE的开发环境搭建(图文并茂)

CP2102版本

串口驱动CP2102

CH340版本

串口驱动CH340

下载

正常连接之后,就可以选择已经连接好的开发板,NodeMCU 1.0 (ESP-12E),具体如下图所示;


通常这里分为两步,在图中已经用序号标注好了,下面介绍每一步的作用;

  1. 编写程序之后,需要先进行编译,生成可以烧写到开发板的固件,这个固件(Firmware)目前还存在电脑上;
  2. 点击下载按钮,固件会通过串口烧录到开发板的Flash上,通常开发板已经固化了一段Bootloader,通常我们叫这个为引导程序,通过引导程序,可以把固件下载到开发板上。
  3. 烧录成功之后,会在软件的Output区域显示成功的日志,否则会提示相应的错误。

注意:上述提到的Flash是一种存储介质,可以理解成电脑的硬盘,,而固件可以理解操作系统(这样可能有点不恰当),操作系统是安装到硬盘上的,最终加载到内存中运行。

结论

本文简单介绍了开发流程,硬件的连接,软件开发注意点和一些基本概念,部分内容在开发环境搭建中也有所提及,详细内容会在后面的文章进行介绍。

由于作者能力有限,文章中难免存在错误和纰漏,请大胆指正,如果对于文章中存在疑惑或者问题,欢迎在评论区进行留言。

如果文章帮到了你,请帮忙点赞,三连支持👍👍👍。

相关文章:

NodeMCU ESP8266开发流程详解(图文并茂)

文章目录 整体架构打开软件setuploop 连接开发板CP2102版本CH340版本 下载结论 整体架构 NodeMCU ESP8266基于Arduino IDE的开发相对来说还是比较容易上手的,我们基本需要以下几个东西; 一台安装好Arduino IDE的PC,并且已经部署环境&#x…...

【最终版】tkinter+matplotlib实现一个强大的绘图系统

文章目录 辅助坐标轴功能实现代码优化源代码 Python绘图系统: 前置源码: Python打造动态绘图系统📈一 三维绘图系统 📈二 多图绘制系统📈三 坐 标 轴 定 制📈四 定制绘图风格 📈五 数据生成导入…...

Postman使用实例

Postman使用实例 实体类Emp package com.example.springboot_postman.pojo;import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;import javax.persistence.*; import j…...

【ES的优势和原理及分布式开发的好处与坏处】

文章目录 ES的优势及分布式开发的好处1.ES的优势1.1 优势概述1.2 相关问题1)为什么需要 Elasticsearch?MySQL 不行吗?2)SQL检索的问题:3)ES检索快的原理 2.分布式开发的好处与坏处 ES的优势及分布式开发的好…...

Autosar诊断实战系列23-CanTp半/全双工及相关工程问题思考

本文框架 前言1. CanTp半/全双工基本介绍1.1 差异比较1.2 不同模式下可能发生场景分析1.2.1 当CanTp正在发送1.2.2 当CanTp正在接收2. 相关工程问题思考前言 在本系列笔者将结合工作中对诊断实战部分的应用经验进一步介绍常用UDS服务的进一步探讨及开发中注意事项, Dem/Dcm/C…...

【Pandas】数据分组groupby

本文目标: 应用groupby 进行分组对分组数据进行聚合,转换和过滤应用自定义函数处理分组之后的数据 文章目录 1. 数据聚合1.1 单变量分组聚合1.2 Pandas内置聚合方法1.3 聚合方法使用Numpy的聚合方法自定义方法同时计算多种特征向agg/aggregate传入字典 2. 数据转换…...

【图像处理GIU】图像分割(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

Java中的锁与锁优化技术

文章目录 自旋锁与自适应自旋锁消除锁粗化轻量级锁偏向锁重量级锁 自旋锁与自适应自旋 自旋锁是一种锁的实现机制,其核心思想是当一个线程尝试获取锁时,如果锁已经被其他线程持有,那么这个线程会在一个循环中不断地检查锁是否被释放&#xf…...

布局与打包

属性栏直接输入值,比代码更直观方便。 打包:...

UVa11324 - The Largest Clique

Online Judge 题目大意&#xff1a;有一张n个点m条边的图&#xff0c;现对于每一个点u&#xff0c;建立一条边连接它和所有它能到达的点&#xff0c;问满足所有点之间都有边的分量的大小最大是多少 0<n<1000;0<m<50000 思路&#xff1a;根据建新图的规则可知&am…...

【Linux】TCP的服务端(守护进程) + 客户端

文章目录 &#x1f4d6; 前言1. 服务端基本结构1.1 类成员变量&#xff1a;1.2 头文件1.3 初始化&#xff1a;1.3 - 1 全双工与半双工1.3 - 2 inet_aton1.3 - 3 listen 2. 服务端运行接口2.1 accept&#xff1a;2.2 服务接口&#xff1a; 3. 客户端3.1 connect&#xff1a;3.2 …...

1.7. 找出数组的第 K 大和原理及C++实现

题目 给你一个整数数组 nums 和一个 正 整数 k 。你可以选择数组的任一 子序列 并且对其全部元素求和。 数组的 第 k 大和 定义为&#xff1a;可以获得的第 k 个 最大 子序列和&#xff08;子序列和允许出现重复&#xff09; 返回数组的 第 k 大和 。 子序列是一个可以由其他数…...

基于微信小程序的付费自习室

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 文章目录 1 简介2 技术栈3 需求分析3.1用户需求分析3.1.1 学生用户3.1.3 管理员用户 4 数据库设计4.4.1 E…...

纪念在CSDN的2048天

时间真快&#xff5e;...

云原生Kubernetes:简化K8S应用部署工具Helm

目录 一、理论 1.HELM 2.部署HELM2 3.部署HELM3 二、实验 1.部署 HELM2 2.部署HELM3 三、问题 1.api版本过期 2.helm初始化报错 3.pod状态为ImagePullBackOff 4.helm 命令显示 no repositories to show 的错误 5.Helm安装报错 6.git命令报错 7.CentOS 7 下git c…...

qml保姆级教程五:视图组件

&#x1f482; 个人主页:pp不会算法v &#x1f91f; 版权: 本文由【pp不会算法v】原创、在CSDN首发、需要转载请联系博主 &#x1f4ac; 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦 QML系列教程 QML教程一&#xff1a;布局组件 文章目录 列表视图ListVi…...

2310d编译不过

struct A {this(int[] data) safe { a data; }int[] a; }void main() safe {int[3] test [1, 2, 3];A a A(test); }应该给data参数加上return scope.或让构造器为模板参数来推导,否则,构造器可以把栈分配切片赋值给全局变量....

CleanMyMac X4.14.1最新版本下载

CleanMyMac X是一个功能强大的Mac清理软件&#xff0c;它的设计理念是提供多个模块&#xff0c;包括垃圾清理、安全保护、速度优化、应用程序管理和文档管理粉碎等&#xff0c;以满足用户的不同需求。软件的界面简洁直观&#xff0c;让用户能够轻松进行日常的清理操作。 使用C…...

芯驰D9评测(3)--建立开发环境

1. 建立交叉编译链接环境 官网下载的SDK包中就有交叉工具链&#xff0c;米尔提供的这个 SDK 中除了包含各种源代码外还提供了必要的交叉工具链&#xff0c;可以直接用于编译应用程序等。 用户可以直接使用次交叉编译工具链来建立一个独立的开发环境&#xff0c;可单独编译…...

阿里云服务器IP地址查询方法(公网IP和私网IP)

阿里云服务器IP地址在哪查看&#xff1f;在云服务器ECS管理控制台即可查看&#xff0c;阿里云服务器IP地址包括公网IP和私有IP地址&#xff0c;阿里云百科分享阿里云服务器IP地址查询方法&#xff1a; 目录 阿里云服务器IP地址查询 阿里云服务器IP地址查询 1、登录到阿里云服…...

视频技术演进:从模拟到数字的革命与压缩技术解析

1. 视频技术演进&#xff1a;从模拟到数字的革命上世纪30年代末&#xff0c;当第一套视频标准在美国诞生时&#xff0c;谁也没想到这个被称为RS-170的技术会成为现代视频技术的基石。作为最早的模拟视频标准&#xff0c;RS-170定义了525线&#xff08;其中480线为有效视频内容&…...

脉冲神经网络硬件实现:整数状态SNN的优化策略

1. 脉冲神经网络的硬件实现挑战在神经形态计算领域&#xff0c;脉冲神经网络&#xff08;SNN&#xff09;因其生物启发特性和事件驱动的计算范式&#xff0c;正逐渐成为边缘计算和低功耗AI应用的重要选择。作为一名长期从事神经形态硬件设计的工程师&#xff0c;我见证了SNN从理…...

AI代码助手评测体系构建:从原理到实践的完整指南

1. 项目概述&#xff1a;AI代码助手评测&#xff0c;到底在测什么&#xff1f;最近在GitHub上看到一个挺有意思的项目&#xff0c;叫ameerkhan9394/ide-ai-benchmark。光看名字&#xff0c;你大概能猜到&#xff0c;这是一个给集成开发环境&#xff08;IDE&#xff09;里的AI助…...

LRCGET:一键为本地音乐库下载同步歌词的终极方案

LRCGET&#xff1a;一键为本地音乐库下载同步歌词的终极方案 【免费下载链接】lrcget Utility for mass-downloading LRC synced lyrics for your offline music library. 项目地址: https://gitcode.com/gh_mirrors/lr/lrcget 你是否厌倦了每次听歌都要手动搜索歌词&am…...

鸣潮智能游戏助手:3步搞定自动化战斗,解放双手轻松游戏

鸣潮智能游戏助手&#xff1a;3步搞定自动化战斗&#xff0c;解放双手轻松游戏 【免费下载链接】ok-wuthering-waves 鸣潮 后台自动战斗 自动刷声骸 一键日常 Automation for Wuthering Waves 项目地址: https://gitcode.com/GitHub_Trending/ok/ok-wuthering-waves 你是…...

使用Python快速编写第一个调用Taotoken大模型的脚本

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 使用Python快速编写第一个调用Taotoken大模型的脚本 对于希望快速体验大模型能力的Python开发者而言&#xff0c;直接对接多个厂商…...

如何解决分布式团队实时协作难题:Etherpad的3大技术架构创新与实践指南

如何解决分布式团队实时协作难题&#xff1a;Etherpad的3大技术架构创新与实践指南 【免费下载链接】etherpad Etherpad: A modern really-real-time collaborative document editor. 项目地址: https://gitcode.com/gh_mirrors/et/etherpad 在当今分布式协作成为常态的…...

认知神经科学研究报告【20260042】

文章目录ForeSight 5.87.4 多元时间序列预测 — 测试报告ForeSight 5.87.4 多元时间序列预测 — 测试报告 测试目标&#xff1a;让系统从数据中自动发现变量之间的因果关系和预测模型&#xff0c;不预设任何模型结构。 测试数据&#xff1a;500个时间点的模拟经济数据&#x…...

凤凰逆变器300W – 基于STM32的纯正弦波逆变器(增强版)

摘要&#xff1a;Phoenix Inverter 300W是一个基于STM32和μC/OS-II的开源纯正弦波逆变器&#xff0c;将12V直流电转换为220V交流电&#xff0c;具备PID闭环控制、智能保护和串口监控功能项目概述基于STM32和μC/OS-II的300W纯正弦波逆变器&#xff0c;将12V直流电转换为220V交…...

AI提示词工程实战:结构化模板提升开发效率与代码质量

1. 项目概述&#xff1a;一个为开发者量身打造的AI提示词库如果你和我一样&#xff0c;每天都要和ChatGPT、Cursor、GitHub Copilot这些AI编程助手打交道&#xff0c;那你肯定也经历过这样的时刻&#xff1a;面对一个复杂的代码审查任务&#xff0c;或者一个棘手的性能优化问题…...