| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 我的ESP32学习笔记(0) 写在前面 ,解决选择困境,找到学习ESP32的正确方法 -> 正文阅读 |
|
[嵌入式]我的ESP32学习笔记(0) 写在前面 ,解决选择困境,找到学习ESP32的正确方法 |
首先要说明一下,这是我自己学习ESP32的笔记,里面记录了我学习过程中的一些经验、心得、想法,我自己并不是专门从事ESP32的资深工程师,也不是乐鑫原厂的技术支持人员,所以存在错误在所难免。如果哪位朋友看到了我的文章,请仅作为参考,如发现有问题,欢迎留言指正,也欢迎技术讨论。 ------------------------------------------------------这里是分界线--------------------------------------------------------- 第一个问题:确定方案 最近由于有个项目要用到WiFI功能,在网上寻找了一下,最终选定了ESP32,所以特定买了块开发板来,边学习边开发。 为什么会选择ESP32呢?我是基于以下几点理由来选择的: 1、ESP32的功能丰富,相当于是MCU+WiFi+Bluetooth的合体,并且flash的空间也比较大,重要的是,价格还不贵; 2、乐鑫原厂对内核进行了封装,提供了丰富的API。之前我们做WiFi,除非是选择串口转WiFi的模块,否则一定会涉及到嵌入式操作系统(也就是linux),如果对linux没有了解的同学,那必定是很痛苦的。ESP32内嵌的是一个freeRTOS的小型操作系统,只要是对C语言有一定的基础,就可以着手进行开发。如果使用Arduino,那么会更简单; 用八字来概括就是:好用不贵,方便实惠。 ------------------------------------------------------这里又是分界线------------------------------------------------------ 第二个问题:确定编译环境 学习ESP32以来,感觉碰到的最大问题,就是选择困境。 程序本身并不复杂,但有一种不知道从哪里下手的感觉。 首先,从安装编译环境来讲,原厂就提供了几种方式(以ESP-IDF 4.3为例): 然后去网上一通搜索,发现各种教程和方法竟然是五花八门,有些是基于VS code编译环境的,有些是基于MicroPhthon,还有的基于Ardunio的,有些是基于AT指令集的。 还有开发板也是多种多样,有乐鑫原厂的,某宝上有多种多样的开发板,每一种开发板用的开发语言和编译环境还不一样。 选择哪一款开发板?使用哪种编译环境和语言? 我自己的体会,这是我学习ESP32感觉最难的地方-选择困境。为此我走了很多弯路。 ------------------------------------------------------这里还是分界线------------------------------------------------------ 第三个问题:我的经验总结和建议 走了很多弯路以后,我自己总结了几条经验,仅供参考,也许每个人的经验和能力不一样,选择会不一样。 1、根据学习目的来定。 如果学习ESP32只是出于兴趣爱好,想做一点物联网控制之类的demo来玩玩,满足一下自己的成就感,只要实现功能就行,对于稳定性无要求,我建议无脑选择Arduino。原因是Arduino的代码简单易学,并且Arduino有很多例程,在网上很多学习资料都是基于Arduino来写的,入门是最快的。 如果是用ESP32来做实际的产品或项目,或者如果要做音频应用ADF,建议一定要用原厂推荐的编译环境来做。也就是ESP-IDF CMD环境。原因是乐鑫原厂的API有很多例程,网站上对API也有详细说明,对于有可能出现的错误也做了很多处理。可以根据项目需求,选择他们的最接近的例程进行修改开发。 退一步来讲,如果感觉一开始就学IDF太难,可以先从Arduino,然后看Arduino调用了哪些API,来理解API的作用和调用方法。 总结起来就是: 用ESP32来玩:用Arduino; 用ESP32做量产产品:用IDF。 至于其他的,像MicroPhthon,Eclipse,VS code,除非你之前很熟,否则我建议初学阶段一律不要去碰。有时候编译通不过,一个小问题会搞得你怀疑人生。 至于开发板,其实不管哪一家的开发板,他使用的芯片都是ESP32,不同的开发板只是外面接的其他芯片不一样,从根本上来说,不影响我们的编程。 如果实在不好决定,我建议是: 玩家选择能提供Arduino例程和学习指南的开发板(哪一家提供的资料多就选哪家),做产品选择乐鑫原厂的开发板。毕竟万变不离其宗,我相信正品一定要比山寨版强。 今天先写这么多,下一篇记录怎么搭建编译环境。 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/9 15:42:52- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |