【闲话】Vscode+PlatformIO+esp-idf+esp32物联网开发小记之环境搭建
Vscode作为一款优秀的代码编辑器,具有极为方便快捷的代码辅助与拓展功能,使用熟练后开发效率大大提高,且作为典型的IDE,不需要花费大量的时间成本即可上手,Vscode结合各种插件,可以搭建出大部分的开发环境,在嵌入式领域,Vscode也是一大神器,本人曾尝试从交叉编译工具开始搭建STM32的IDE,在Ubuntu上实践成功,编译速度相比keil成倍提升,缺点是需要自己写makefile,这就导致一些特殊的lib不好引入,实为一大遗憾,且由于某些尚未解决的问题,没能搞定OpenOCD,用CubeMX+Vscode+CubeProgrammer,勉强搭了一个半残废的环境,胜在稳定,搭建的方法也是网上东拼西凑找的,有时间做个总结。换到Windows,原先的方法反而行不通了,也罢,Ubuntu没有其他可选,Windows还不大把?尽管如此,Vscode的方便还是驱动着我找到了这个强大的插件——PlatformIO,选择它的一大理由,就是它的支持更新速度,对于主流的芯片,能很快适配,经测试,STM32整体开发非常流畅,可以说相当不错。
但,这不是今天我要讲的,今天要讲的Vscode+PlatformIO+esp-idf+esp32的环境搭建,其实也相当简单,在PlatformIO上新建工程,选择esp32的broad,framework选的esp-idf,经过漫长的第一次创建的配置,把测试代码拷到main里,build,upload,一气呵成。。。才怪,中间的坑多的很。。。首先测试代码是乐鑫开源的,这就要吐槽下乐鑫的用户支持,代码开源在GitHub上,众所周知,GitHub是时而存在,时而不存在的网站,我们称之为薛定谔的GitHub,把代码开源在一个不存在的网站,这不是存心不让用户下载吗(怒),好在Gitee有人搬运,嗯,忍了。除了PaltformIO外,乐鑫还推出了自己的Vscode插件,称为Espressif IDF,说实话,IDF这个名字起的不错,让人联想到某先进三代机,题外话,Espressif IDF的安装依赖esp-idf tools,乐鑫的开源下载工具,然后下载源是GitHub,经历了漫长的龟速下载以后,宣告失败,不知道是我的问题还是本身支持一般,当然还有一个办法是解决GitHub的网速问题,具体就不展开了。
还好,我们有PlatformIO,把测试代码拷到main里,build,upload,一气呵成。。。并没有,我这的话出现最大的问题是upload的时候串口有问题,当然这是我电脑驱动的问题,花费了很多时间排查出来了,先说解决方法,去官网下驱动,进设备管理器查看CP210x的驱动分配到COM号,比如是COM3,然后你发现upload后返回错误serial.serialutil.serialexception: could not open port 'com3',把驱动卸载了,重装,直到COM号不是COM3,比如COM8,再试一次就可以了,这是估计我电脑过去乱连蓝牙模块导致的,抛开其他问题不谈,esp32的环境可选的有很多,还是不错的,把这一切搞定,就可以愉快地开发esp32了
后话:Arduino的framework真香
【闲话】Vscode+PlatformIO+esp-idf+esp32物联网开发小记之环境搭建的更多相关文章
- 使用Kotlin开发Android应用 - 环境搭建 (1)
一. 在Android Studio上安装Kotlin插件 按快捷键Command+, -> 在Preferences界面找到Plugins -> 点击Browse repositorie ...
- Tiny4412 开发板 编译环境搭建【转】
本文转载自:http://blog.csdn.net/beijiwei/article/details/51055369 版权声明:本文为博主原创文章,未经博主允许不得转载. /*********** ...
- IoT设备程序开发及编译环境搭建初体验
引言 Mirai事件一经曝出,立即引领了一轮研究IoT设备的热潮.目前,对Mirai的报告大多只是在对其功能实现上的介绍,却很少提及如何实现IoT设备程序开发的测试环境.本文在对Mirai的源码研究的 ...
- 基于GBT28181:SIP协议组件开发-----------第一篇环境搭建
原创文章,引用请保证原文完整性,尊重作者劳动,原文地址http://www.cnblogs.com/qq1269122125/p/3930018.html,qq:1269122125. SIP协议在安 ...
- 1 IDEA 安装 及 IDEA开发 spring的环境搭建
摘要: 主要讲解使用 IDEA 开发 Spring MVC 的环境搭建,Maven的简单教学. 参考1:https://my.oschina.net/gaussik/blog/385697 参考2:h ...
- Android NDK开发之从环境搭建到Demo级十步流
写在正文之前: 几个月没有更新博客,感觉有点生疏了,所以说不能断,一断人就懒. 其实这几个月也并不是什么事也没有做,俺可是时刻想着今年的任务呢,10本书,30篇博文...,这几个月间断性的也是在学习中 ...
- UI5-学习篇-1-Eclipse开发工具及环境搭建
最近研究SAP-UI5好几个月了,将相关学习经历及问题点做个记录. 1.先了解学习资料相关站点 SAP官网:https://www.sap.com/china/index.html SAP开发工具:h ...
- webapp开发学习---Cordova环境搭建
Cordova 使用HTML, CSS & JS进行移动App开发;多平台共用一套代码;免费开源 步骤:(来自Cordova官网) 1.安装Cordova(在node.js环境下进行安装) 命 ...
- 前端开发 Vue -1windows环境搭建Vue Node开发环境
解决几个疑问: 想学习下vue.js,我理解的它是一个前端的框架,主要作用是对数据的处理,和juqery类似,所以不太理解为什么要在nodejs中npm install vue呢?在html文件中引入 ...
- JavaSE 学习笔记01丨开发前言与环境搭建、基础语法
本蒟蒻学习过C/C++的语法,故在学习Java的过程中,会关注于C++与Java的区别.开发前言部分,看了苏星河教程中的操作步骤.而后,主要阅读了<Java核心技术 卷1 基础知识>(第8 ...
随机推荐
- ElasticSearch分布式搜索引擎——从入门到精通
ES分布式搜索引擎 注意: 在没有创建库的时候搜索,ES会创建一个库并自动创建该字段并且设置为String类型也就是text 什么是elasticsearch? 一个开源的分布式搜索引擎,可以用来实现 ...
- 简单了解C语言如何构建多文件项目
简单理解C语言如何构建工程 首先我们最好有一个好用的编辑器,vscode也好,visual studio也罢,dev也行,这里我们使用的是code::block: 一.了解C语言工程的构建原理 首 ...
- Jpbc哈希函数如何实现
1.(0,1)→Element元素 在Jpbc库中存在两个方法 Element A=G1.newRandomElement();A.setFromBytes(arr,0,arr.length);//A ...
- IOS + H5 开发,如何实现,H5页面显示在IOS上
环境:IOS12.0 工具:Xcode 12.0 工程:IOS12.0工程 + H512.0工程 1,先把开发的H5画面,编译打包:assets静态资源文件 favicon.ico图标 index.h ...
- 使用Hook拦截sendto函数解决虚拟局域网部分游戏联机找不到房间的问题——以文明6为例
正文 重要提醒(2023-02-13):本文部分内容存在bug,目前正在调试修改,会在一段时间之后更新 重要提醒(2023-02-14):目前已修复主要bug,会在一段时间之后更新,本文计划重写大部分 ...
- echarts使用dataset数据集创建单轴散点图
dataset创建单轴散点图 由于使用echarts作图时,我很喜欢用dataset作为数据源,但是官方案例中,有没有给出相关示例,于是,在翻阅官方文档相关案例之后,结合官方文档使用dataset的示 ...
- 如何在不额外读流的情况下计算md5值
设想这样一个场景:从网络流中读取文件到硬盘中并计算文件的md5值.通常的做法是先将文件保存下来,再计算文件的md5,但这样会一共会出现三次I/O,一次网络I/O,两次磁盘I/O. 导致额外磁盘I/O的 ...
- Centos7-RAID冗余磁盘阵列
转载csdn: Centos7-RAID冗余磁盘阵列_黏住你不让你的博客-CSDN博客
- Echarts —自定义label标签的样式(formatter,rich,添加图标等操作)
最近公司项目中在使用 Echarts 绘制图表时,由于默认的 label 标签不能满足设计稿需求,所以研究了对 label标签进行格式化的方案,了解到可以使用 formatter 内容格式器对标签内容 ...
- postgreSQL开启数据库guid类型
执行:create extension "uuid-ossp"; 即可使用:SELECT gen_random_uuid();或SELECT uuid_generate_v4()