ESP32到底有多强,一起探究下
之前发了ESP8266,有人评论说玩下ESP32
一.功能强大
自带wifi+蓝牙是最大亮点!一起来看看ESP32的规格,就知道它强在哪里了。
● 内置WiFi和蓝牙,就不需要额外的以太网模块或wifi模块了,集成度高;
● 双核 CPU,可以主频为 80、160 或 240MHz。对于一个体积小巧的芯片中是相当多的计算了;
● 高级外设接口:I2C, SPI, CAN等,可以实现很多应用,不仅仅是个Wi-Fi MCU;
● 大量内存:ESP32包括 512KB 的片上 SRAM 存储器,还支持外部存储器,具体取决于主板,可能高达 4 到 8MB。这意味着ESP32 适用于一些较重的任务,例如连接摄像头、识别语音、从互联网流式传输数据等。
二.价格亲民
ESP32确实性价比非常高!不仅功能强大,而且价格便宜。不算flash,只要9元!
在现在这个时代,9元能买什么?!但却可以买到ESP32,让开发爱好者尽情激发自己折腾的冲动。
而且在疫情冲击下,半导体供应链面临的缺货问题,ESP 32也不存在!不缺货,也不涨价,性价比那么高,还有什么理由不用它呢?
三.IOT上近乎无敌
有网友毫不客气地说,IoT领域可能以后有ESP 32就没stm32什么戏唱了。虽然观点略显偏颇,但也不全无道理。
stm32是通用芯片,应用更全面;而ESP 32是物联网专用芯片,其算力性能,启动速度,稳定性,耐久度,可操作io数量及类型,啥都够,实在是太好用了。
然后就买了几个回来,当然,也想着和大家一起玩
介绍下这个开发板开发板Github项目链接
https://github.com/Xinyuan-LilyGO/T-QT
把仓库的代码下载到本地
我们可以用ESP-IDF和Arduino两个SDK来开发ESP32S3
ESP-IDF跑到是FreeRtos,搞嵌入式对看这个会觉得比较对口,Arduino更像是一个玩具。
ESP-IDF和Arduino都是用于开发ESP32的工具,它们各有优点和缺点。
ESP-IDF:优点:- 它是ESP32官方的开发框架,提供了更多底层控制和灵活性,适合需要高度定制化的项目。
- 提供了更全面的文档和示例。
- 支持FreeRTOS,可以实现多任务和多线程。
缺点:- 使用ESP-IDF需要更多的编程知识和经验。
- 开发过程可能需要更多的配置和调试。
Arduino:优点:- 对于初学者来说,Arduino更易于上手,具有更友好的用户界面和更简单的API。
- Arduino有大量的库和示例可供使用,可以大大缩短开发时间。
- Arduino的开发环境非常成熟,可以在多种操作系统上运行。
缺点:- Arduino的灵活性有限,对于需要更高级控制的项目可能会有局限性。
- 由于使用了更高级的API和库,Arduino可能会占用更多的资源,例如内存和处理器时间。
因此,选择使用ESP-IDF还是Arduino取决于个人需求和项目要求。
怎么安装ESP-IDF环境?直接按照官方的来就行了
https://docs.espressif.com/projects/esp-idf/zh\_CN/stable/esp32s3/get-started/linux-macos-setup.html
<pre style="color: rgb(0, 0, 0);font-size: medium;text-align: start;padding: 10px;background-color: rgb(250, 250, 250);border-width: 1px;border-style: solid;border-color: rgba(0, 0, 0, 0.1);border-radius: 2px;overflow-x: scroll;">```
<span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">mkdir </span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(154, 110, 58);letter-spacing: 0pt;vertical-align: baseline;">-</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">p </span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(154, 110, 58);letter-spacing: 0pt;vertical-align: baseline;">~/</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">esp</span><span lang="EN-US"><p></p></span><br></br><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">cd </span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(154, 110, 58);letter-spacing: 0pt;vertical-align: baseline;">~/</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">esp</span><span lang="EN-US"><p></p></span><br></br><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">git clone </span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(154, 110, 58);letter-spacing: 0pt;vertical-align: baseline;">-</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">b v5</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(153, 153, 153);letter-spacing: 0pt;vertical-align: baseline;">.</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(153, 0, 85);letter-spacing: 0pt;vertical-align: baseline;">0.1</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;"> </span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(154, 110, 58);letter-spacing: 0pt;vertical-align: baseline;">--</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">recursive https</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(154, 110, 58);letter-spacing: 0pt;vertical-align: baseline;">:</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(112, 128, 144);letter-spacing: 0pt;vertical-align: baseline;">//github.com/espressif/esp-idf.git</span><span lang="EN-US"><p></p></span><br></br><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">cd </span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(154, 110, 58);letter-spacing: 0pt;vertical-align: baseline;">~/</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">esp</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(154, 110, 58);letter-spacing: 0pt;vertical-align: baseline;">/</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">esp</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(154, 110, 58);letter-spacing: 0pt;vertical-align: baseline;">-</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">idf</span><span lang="EN-US"><p></p></span><br></br><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(153, 153, 153);letter-spacing: 0pt;vertical-align: baseline;">.</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(154, 110, 58);letter-spacing: 0pt;vertical-align: baseline;">/</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">install</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;color: rgb(153, 153, 153);letter-spacing: 0pt;vertical-align: baseline;">.</span><span data-font-family="Monaco" style="font-size: 10.5pt;font-family: Monaco;letter-spacing: 0pt;vertical-align: baseline;">sh esp32s3</span><span lang="EN-US"><p></p></span><br></br>
我记录了下过程中常遇到的操作指令
<pre style="color: rgb(0, 0, 0);font-size: medium;text-align: start;padding: 10px;background-color: rgb(250, 250, 250);border-width: 1px;border-style: solid;border-color: rgba(0, 0, 0, 0.1);border-radius: 2px;overflow-x: scroll;"><p style="line-height: 1.75em;margin-left: 16px;margin-right: 16px;"><code data-tco-code-type="cmake" style="background-color: inherit;"><span style="font-size: 10.5pt;vertical-align: baseline;letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;">. $HOME/esp/esp-idf/export.sh //设置环境变量</span><span style="letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;"><p></p></span><br></br><span style="font-size: 10.5pt;vertical-align: baseline;letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;">idf.py set-target esp32s3 //设置编译芯片</span><span style="letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;"><p></p></span><br></br><span style="font-size: 10.5pt;vertical-align: baseline;letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;">idf.py menuconfig //配置</span><span style="letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;"><p></p></span><br></br></code></p><p style="line-height: 1.75em;margin-left: 16px;margin-right: 16px;"><code data-tco-code-type="cmake" style="background-color: inherit;"><span style="font-size: 10.5pt;vertical-align: baseline;letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;">idf.py build //编译</span></code></p><p style="line-height: 1.75em;margin-left: 16px;margin-right: 16px;"><code data-tco-code-type="cmake" style="background-color: inherit;"><span style="font-size: 10.5pt;vertical-align: baseline;letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;">idf.py -p PORT [-b BAUD] flash //多分区完整烧录</span></code></p><p style="line-height: 1.75em;margin-left: 16px;margin-right: 16px;"><code data-tco-code-type="cmake" style="background-color: inherit;"><span style="font-size: 10.5pt;vertical-align: baseline;letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;">idf.py app //编译应用app</span><span style="letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;"><p></p></span><br></br><span style="letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;"><span data-font-family="Monaco" style="letter-spacing: 2px;font-size: 10.5pt;vertical-align: baseline;">idf.py app-flash //烧录应用app</span><br></br><p></p></span><br></br><span style="letter-spacing: 2px;font-family: Optima-Regular, PingFangTC-light;"><span data-font-family="Monaco" style="letter-spacing: 2px;font-size: 10.5pt;vertical-align: baseline;">cp -r $IDF_PATH/examples/get-started/hello_world . //拷贝参考实例到当前目录</span><br></br><span data-font-family="Monaco" style="letter-spacing: 2px;font-size: 10.5pt;vertical-align: baseline;">git submodule update --init --recursiv //更新模块仓库</span><br></br></span></code></p>
安装Arduino直接官网下载安装
https://www.arduino.cc/en/software/
Arduino是这样管理库的
但是我们需把Github下载lib里面的东西替换到Arduino 的库目录下
好了,我们打开一个工程,然后编译烧录
就可以看到显示了
- 分享
- 举报
-
2020-08-11 11:58:23
-
浏览量:3818次2022-02-22 09:01:56
-
浏览量:777次2023-09-20 11:37:44
-
浏览量:4085次2019-10-23 14:55:46
-
浏览量:1184次2023-10-28 16:11:07
-
浏览量:745次2023-04-20 08:54:12
-
浏览量:1649次2020-04-03 09:38:23
-
浏览量:1032次2023-12-11 11:01:31
-
浏览量:1868次2020-07-07 17:53:16
-
浏览量:1024次2023-04-23 09:44:59
-
浏览量:798次2023-04-21 08:55:25
-
浏览量:1338次2023-04-20 08:57:01
-
浏览量:1021次2023-04-21 08:46:56
-
浏览量:818次2023-04-23 09:46:58
-
浏览量:4171次2021-08-06 15:43:28
-
浏览量:1457次2022-02-02 09:00:46
-
浏览量:2793次2020-12-09 11:12:54
-
浏览量:1807次2020-03-25 10:14:39
-
浏览量:5489次2022-04-02 09:00:36
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
技术践行者
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明