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

【ESP】一小时速通入门笔记

【ESP】一小时速通入门笔记

前言: 之前上学时就用过一次esp32, 当时初次使用搭建编译环境费了老大功夫.在我第一篇esp32笔记中也有说明.以至于我好像忘记记录完整的入门笔记了.最近因为工作需要又开始接触esp32才发现,现在已经方便得多了.顺利的话一小时速通.

前排提醒: 本笔记编写于 [2024年11月10日] ,随着时间的推移, 笔记中提到的官网链接和说明布局可能会有较大的变动.不过应该本质核心操作方向不会变.

一、准备ESP

  • esp3分为芯片,模组 ,开发板三类.
  • 一般就是是买模组然后根据需要为其制定外围电路.或是直接买开发板入门.
  • 最后都是为芯片编写程序,烧录程序.
    在这里插入图片描述

二、开始速通

  • 通过搜索引擎找到 esp32-idf 编程指南.
    在这里插入图片描述

  • 注意文档是持续更新的,所以你可能看到的模样和我不同.通过左边的下拉框可以查看和选择文档版本. 注意不同文档变化的位置较大.建议直接使用在文档中搜索功能.
    在这里插入图片描述

  • 下拉找到在win系统下的安装方法指导.在windown中开始创建工程. 注意不同文档变化的位置较大.建议直接使用在文档中搜索功能.
    在这里插入图片描述

  • 然后找到 ESP-IDF 工具安装器 的链接. 注意不同文档变化的位置较大.建议直接使用在文档中搜索功能.
    在这里插入图片描述

  • 选择第一个在线安装或第三个离线安装. 截止目前为止,安装的esp-ide并不好用.所以不建议选第二个.
    在这里插入图片描述

  • 下载好后放在没有中文,没有空格的路径下.
    在这里插入图片描述

  • 开始傻瓜式下一步
    在这里插入图片描述
    在这里插入图片描述

  • 注意:这一步是检查安装环境,检查完后要点击应用修复.修复完后才能点击下一步!
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 注意: 这里的安装路径不能有中文和空格!!!
    在这里插入图片描述
    在这里插入图片描述

  • 选择完全安装, 反正东西不多.注意这里提到的python,git,esp-idf,IDF_TOOLS_PATH.安装器主要就是安装这几个东西. 之后会反复提到. 然后idf里包含了几个"芯片包",ESP32,ESP32-C3等等…
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

  • 最后安装完成.检查一下系统的环境变量.IDF_TOOLS_PATH.

  • 还有在PATH中添加idf-git工具和idf-python工具的路径!!!
    在这里插入图片描述
    在这里插入图片描述

  • 还有其他环境变量, 比如IDF_PATH, 目前不是必须, 就略过.

  • 如果不使用安装自带的终端,才会用到 .
    在这里插入图片描述

  • 安装完后会有2个终端的快捷方式.直接打开就会加载所需的所有环境变量.
    在这里插入图片描述
    在这里插入图片描述

  • 到idf路径内拷贝1个经典的hello_word例程试试.记得要拷贝出来,不要玷污了原本的idf.
    在这里插入图片描述
    在这里插入图片描述

  • 然后在打开的idf终端里进行cd跳转.
    在这里插入图片描述

  • 开始之前先确认一下,手头上的esp32是系列.具体可以到官网查.然后先切换指定"芯片包".就是一开始安装时提示的那些esp32系列.

  • 使用idf.py set-target {***}命令切换,括号内就是芯片包的简称.默认就是eps32,可以不用切换.
    在这里插入图片描述

  • 调用idf.py build编译.初次编译会相当慢!
    在这里插入图片描述
    在这里插入图片描述

  • 编译完成后要下载, 需要准备一个usb转ttl的工具.淘宝有很多款式售卖.注意,最好包含DTRRTS引脚功能的.
    在这里插入图片描述

  • esp32的GPIO0就是BOOT引脚,使用的串口烧录,所以要下拉接地.

  • esp32的CIHP_PU就是RESET引脚,烧录瞬间要是复位的起始状态.

  • 如果你的usb转ttl工具没有DTRRTS引脚功能,那就要手动将GPIO0接地,和CIHP_PU复位电平,或是手动断电上电复位. 梦回51烧录.
    在这里插入图片描述

  • 接好线后就可以开始烧录了.idf.py {-p COM8} flash. 如果不指定端口号, 那么终端会自己遍历所有能用的端口号挨个尝试.查看端口可以通过串口工具或是win的设备管理器,不赘述了.
    在这里插入图片描述在这里插入图片描述

  • 烧录完成后可以通过idf.py {-p COM8} monitor打开串口监视器,看看到模块的复位日志(绿色), 和打印的内容(白色).按组合快捷键Ctrl+]退出监视器.
    在这里插入图片描述

  • 然后我们可以打开工程的hello_world_main.c文件,随便改点打印内容.然后重新编译,再监听.看看效果.
    在这里插入图片描述
    在这里插入图片描述

  • 至此就算玩成最基本的操作,建立工程,修改,编译,下载,监听.

  • 另外,esp支持图形化修改程序.使用idf.py menuconfig [--help]指令打开.加个后缀--help可以查看更多说明.这里不赘述了.

  • 这个功能其实是基于工程的规范性给出的.esp库定义了很多宏定义,修改宏定义值相应的功能就会被修改.但是普通人开发很多根本不按照预定规范,所以实际上这个功能用不起来.
    在这里插入图片描述

  • 最后还缺一个IDE,官方安装器中自带的ide是魔改的Espressif,非常不好用,卡得要死,而且安装后不能立刻用,还要改设置和编译工具.我至今一次没成功过.

  • 一般推荐使用免费开源的VS Code,轻量级,直接官网下载安装包或压缩包.解压即用.
    在这里插入图片描述

官网好像将下载页面藏起来不给人下载zip版.目前通过其他大佬分享找到:
(2023)最新VSCode安装包(.zip版本),解压缩直接用
https://blog.csdn.net/qq_47574956/article/details/131221381

  • 解压就用,然后选择文件夹,打开.c文件.
    在这里插入图片描述
    在这里插入图片描述

  • 提示需要一个插件,识别c/c++文件.点击自动安装,或者手动搜素安装.
    在这里插入图片描述

  • 安装好后会提示选择编译链,略过.然后会提示找不到头文件.
    在这里插入图片描述

  • 把鼠标放上去,就会提示添加/修改头文件路径(第一个).
    在这里插入图片描述

  • 点击后可能会跳到这个c/c++页面, 同时会在工程目录生成一个.vscode/c_cpp_properties.json配置文件.直接修改它就好了.
    在这里插入图片描述

ESP32的ESP-IDF在VScode工程下,头文件标红警告、报错、无法跳转
https://blog.csdn.net/weixin_49337111/article/details/135167692#comments_35196774
vscode使用compile_commands.json配置includePath环境
https://blog.csdn.net/qq_37868450/article/details/105013325

  • "configurations"内添加"compileCommands": "${workspaceFolder}/build/compile_commands.json".注意 这里引用了一个编译生存的.json, 也就是说要编译后才存在的!!!
    在这里插入图片描述

  • 这个时候就不会报错了.不过你可能还是无法跳转,缺少一个esp插件.
    在这里插入图片描述

  • 在应用里搜索ESP-IDF插件,并下载安装.
    在这里插入图片描述

  • 然后整个vscode就多了很多的东西.左边多了一个esp图标,点击会有一列菜单选项.底部会有esp工程相关的.

  • 从左到右分别是idf版本选择,端口号选择,芯片包选择,等等,编译,烧录,清空编译,监听等功能也在其中.
    在这里插入图片描述

  • 先配置一下esp插件的内容点击下图中Configure ESP-IDF Extension,会弹出界面ESP-IDF Setup,选择第三个USE EXISTING SETUP已有的目录.选择第一个是在线下载安装.我们已经安装并验证好idf了,这里直接选择已有目录.
    在这里插入图片描述

  • 检查一下路径对不对.idf,python,git,三者的路径.
    在这里插入图片描述

  • 然后就算完成配置了,左下角会显示idf的版本号,并且弹出这个启动页面.可以创建和导入工程,还有查看例程.例程的路径上面已经说过了,如果看到合适的就可以直接拷贝出来测试.
    在这里插入图片描述

  • 这个时候再回到hellow_world_main.c就可以对头文件跳转定义,打开esp库查看了.
    在这里插入图片描述

  • 还有更多的其他功能和设置我就不赘述了.不如设置端口号,选择下载方式.点击小火图标就可以编译,下载,监听一条龙服务.
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 操作一样,输入Ctrl+]退出监听;
    在这里插入图片描述

  • 至此就算全部结束了.

  • 总结下来就是安装ESP-IDF,自带了pythongit.使用idf.py进行编译,下载,监听等操作.

  • 如果是linux系统,可能会使用CMake方式进行同样的操作,前缀换成了make.之前我学linux弄ROS系统时,就是这么编译操作的.


http://www.kler.cn/a/387347.html

相关文章:

  • 计算机的错误计算(一百五十二)
  • 35.3K+ Star!PhotoPrism:一款基于AI的开源照片管理工具
  • 【考研数学:高数2】数列极限
  • 图像处理自动渲染代码
  • Spring Boot 的核心注解
  • ‌在生产环境中,需要屏蔽以下PHP功能以增强安全性‌:
  • 【数据处理】数据预处理·数据变换(熵与决策树)
  • AI 写作(五)核心技术之文本摘要:分类与应用(5/10)
  • Sigrity SPEED2000 Power Ground Noise Simulation模式如何进行电源地噪声分析操作指导-SODIMM
  • SQLAlchemy 介绍与实践
  • 【软件测试】需求的概念和常见模型(瀑布、螺旋、增量、迭代)
  • 使用SpringBoot构建可扩展的在线教育平台
  • 力扣17-电话号码的数字组合
  • 【前端】Svelte:Store 状态管理
  • 编程语言之战:AI 之后的 Kotlin 与 Java
  • 【DM系列】DM 集成 JDBC 开发指南
  • 杂谈:业务说的场景金融是什么?
  • k8s集群安装(kubeadm)
  • Android打包流程图
  • 5G网卡network connection: disconnected
  • 小程序开发进阶之路-AI编程助手
  • 配置多公钥在多平台使用Git
  • FOFA使用教程之从零到精通
  • javascript实现国密hash(sm3)算法(支持微信小程序),可分多次计算
  • 【论文复现】MSA+抑郁症模型总结(三)
  • 使用 Flask 和 ONLYOFFICE 实现文档在线编辑功能