保姆级手把手教学视频

https://www.bilibili.com/video/BV1RL411A7CU

前言

因为碰上一个学长,跟他聊了会儿天,推荐我做一点物联网的项目,想来想去,那就用WiFi点个灯吧。

转了一圈下来,手上有几款单片机,就拿esp32先上手了,计划还会使用w801的开发板接着做,然后还有就是stm32+wifi模块,有机会想自己做一个带WiFi的开发板

1.1 查看官方文档

既然是开发环境,就应该是他的SDK,然后我们选择的是VSCode+IDF,会有些曲折和复杂

打开乐鑫官网

点开“物联网开发框架”

然后向下翻,点击入门指南

选择你的芯片,我的是esp32

在目录下面找到windows

( 好啦,然后你就可以照着文档自己配置了,我觉得官方写得还是可以的

1.2 安装编译环境

根据网上的网上的一些教程,是需要提前安装好python和git,但我电脑之前就有了,不知虚实。

以及vscode插件C/C++( 请保证你的插件为最新版本,否则会产生command not found错误 )

在文档中找到下载地址

如图,很明显分成3类,在线包、IDE、IDF,出于不装不必要的初衷,这里安装IDF,可以任选一个版本。

选好本本后记得把文档的这个选项也改过来哦

整个开发环境安装下来大概1.7G左右

1.3 配置vscode

下载插件

请务必保证你安装了并更新到最新的“C/C++”插件

Ctril+Shift+P,然后输入esp-idf config点击进去,根据提示完成配置,可能需要梯子

1.4 调试配置

https://github.com/espressif/vscode-esp-idf-extension/blob/master/docs/DEBUGGING.md

这篇文章讲了两种方法,一种是通过IDF插件,另外一种是C/C++插件,可以直接讲C/C++复制粘贴到./.vscode/launch.json全文粘贴

1.5 开发环境的使用

1.5.1 example示例项目

有示例项目,/exmple文件目录下的README文件有介绍template模板工程

If you're looking for a more bare-bones project to start from, try esp-idf-template.

1.5.2 工具栏

底部工具栏


都是esp官方提供的工具

1.6 IDF框架的使用

这里的使用指的使用命令行,idf.py这个命令来完成的

所有example样例都是standalone独立的(文档中有说明),可以放心复制粘贴

1.6.1 配置编译设置

请用esp-IDF提供的命令行打开然后切到目录里面

idf.py set-target esp32
idf.py menuconfig

1.6.2 构建工程

idf.py build

1.6.3 烧录

idf.py -p PORT [-b BAUD] flash

注意:板子在烧录时可能会有问题,官方给出了解决方案

我手上的板子在进行烧录的时候,(已经开始烧录的程序了)短按1s boot键,就可以顺利烧录

1.6.4 监视器(其实就是串口助手)

idf.py -p /dev/ttyUSB0 monitor

写于2022/8/12 转载请标明出处

(一)esp32开发环境搭建(VSCode+IDF实现单步调试)的更多相关文章

  1. 基于windows环境VsCode的ESP32开发环境搭建

    1. 基于windows环境VsCode的ESP32开发环境搭建,网上有各类教程,但是我实测却不行. 例如我在vscode内安装的乐鑫插件,扩展配置项是下图这样: 而百度的各类博文却都是这样: 经过网 ...

  2. Eclipse集成开发环境搭建

    gdbserver安装: 安装gdb-server的环境变量要放在arm-linux-gcc的环境的前面,因为arm-linux-gcc的安装包里面也有gdb,linux系统在找指令时从/root/. ...

  3. Linux下使用VsCode进行Qt开发环境搭建

    最近在Linux上搞Qt, vim环境还用不太习惯, QtCreator之前使用时莫名其妙崩溃然后丢失代码之后就被我彻底放弃了, 于是研究了一下用VsCode进行Qt开发. 首先是系统环境和下载安装包 ...

  4. Appium-001-测试开发环境搭建(Android - Win7)

    随着移动端 App 测试自动化的兴起,为更好的控制产品质量,越来越多的中大型公司开始了移动端的自动化测试.Appium 自动化测试技术也是我很早之前就想学习的一门技术,却一直没有比较空余的时间来学习( ...

  5. angular开发环境搭建及新建项目

    最近一个星期准备学习一下angular前端框架,因为之前在学习abp框架的时候,都要求前端要掌握angular,所以不得不回来恶补一下了,学习的过程有时间的话会记录在这里,方便以后复习. 闲言少叙,下 ...

  6. 第二章 TypeScript 开发环境搭建

    Mac OS X 下 TypeScript 开发环境搭建 一.集成开发环境 WebStrom VSCode 二.安装 TypeScript Homebrew(macOS 缺失的软件包管理器) ruby ...

  7. 最全Vue开发环境搭建

    前言 一直想去学Vue,不过一直找不到一个契机.然公司手机端用到了跨平台开发apicloud,里边涉及到Vue组件化开发,例如header和footer的封装,以及apicloud自定义的frame等 ...

  8. TypeScript完全解读(26课时)_1.TypeScript完全解读-开发环境搭建

    1.TypeScript完全解读-开发环境搭建 初始化项目 手动创建文件夹 D:\MyDemos\tsDemo\client-demo 用VSCode打开 npm init:初始化项目 然后我们的项目 ...

  9. 1-ESP8266 SDK开发基础入门篇--开发环境搭建

    因为今天终于做好了自己的另一块工控板,所以我就开始写基础公开篇的内容,希望自己小小的努力能够帮到大家 自己做的另一块板子 https://www.cnblogs.com/yangfengwu/cate ...

随机推荐

  1. 判断数据类型(typeof&instanceof&toString)

    一.数据类型 ES6规范中有7种数据类型,分别是基本类型和引用类型两大类 基本类型(简单类型.原始类型):String.Number.Boolean.Null.Undefined.Symbol 引用类 ...

  2. vue新手入门之使用vue框架搭建用户登录注册案例,手动搭建webpack+Vue项目(附源码,图文详解,亲测有效)

    前言 本篇随笔主要写了手动搭建一个webpack+Vue项目,掌握相关loader的安装与使用,包括css-loader.style-loader.vue-loader.url-loader.sass ...

  3. 奶盖拌饭 NKOJ8457

    题意:一个无向图,每次询问给出一条边,问这条边的最大值满足这条边一定在这个图的最小生成树上,如果没有上限输出-1. 思路:考场上想过的,将分为两类,(非)树边. 1.亿点性质 非树边:加上这条边所构成 ...

  4. 揭秘华为云GaussDB(for Influx)最佳实践:hint查询

    摘要:GaussDB(for Influx)通过提供hint功能,在单时间线的查询场景下,性能有大幅度的提升,能有效满足客户某些特定场景的查询需求. 本文分享自华为云社区<华为云GaussDB( ...

  5. uni-simple-router

    目录 uni-simple-router 一.快速上手 扩一:webpack插件之DefinePlugin 扩二:uni-read-pages 如何获取pages.json中的路由 二.H5模式 2. ...

  6. VUE3 之 render 函数的使用 - 这个系列的教程通俗易懂,适合新手

    1. 概述 老话说的好:不用想的太多.太远,做好当天的事,知道明天要做什么就可以了. 言归正传,今天我们来聊聊 VUE 中 render 函数的使用. 2. render 函数 2.1 一个简单的例子 ...

  7. C++ 炼气期之基本结构语法中的底层逻辑

    1. 前言 从语言的分类角度而言,C++是一种非常特殊的存在.属于高级语言范畴,但又具有低级语言的直接访问硬件的能力,这也成就了C++语言的另类性,因保留有其原始特性,其语法并不象其它高级语言一样易理 ...

  8. c++ 超大整数除法 高精度除法

    c++ 超大整数除法 高精度除法 解题思路 计算a/b,其中a为大整数,b为普通整数,商为c,余数为r. 根据手算除法的规则,上一步的余数记为r,则本次计算的被除数为t=r*10+被除数的本位数值a[ ...

  9. 合宙AIR105(二): 时钟设置和延迟函数

    目录 合宙AIR105(一): Keil MDK开发环境, DAP-Link 烧录和调试 合宙AIR105(二): 时钟设置和延迟函数 Air105 的时钟 高频振荡源 芯片支持使用内部振荡源, 或使 ...

  10. mybatis踩过的坑

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "- ...