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

SOC-ESP32S3部分:7-如何学习ESP32S3-IDF开发

飞书文档https://x509p6c8to.feishu.cn/wiki/GBQ4wjSakiCxIVkfr4zcJl1Tn5b

通过前面几章的学习,我想大家都感觉到了,ESP32的开发和普通单片机开发还是有一定差异的,我们在学习51时主要学习的是寄存器的开发,学习STM32时,主要学习的是各类芯片资源、外设的库函数开发,而学习ESP32时,除了基础芯片资源、外设,还有各类WiFi、蓝牙、网络、安全、系统、音频等等模块。

我们可以在Espressif\frameworks\esp-idf-v5.4\examples看到

sql
bluetooth
build_system
common_components
custom_bootloader
cxx
ethernet
get-started
ieee802154
mesh
network
openthread
peripherals
phy
protocols
provisioning
security
storage
system
wifi
zigbee

ESP32的资源非常多,大模块包含蓝牙、WiFi、系统、外设、存储、安全、配网联网等等,每个大模块又包含非常多的小模块,对于这类芯片的应用,我们不可能像学习基础教程一样,逐个模块进行讲解,那样可能几百节课程都讲不完。

1.1、为何不像51STM32课程一样讲解?

我们在企业做项目时,可能这个项目用乐鑫的ESP32,下一个项目又用博通的BKxxx,再下一个可能又用其它家的,国内的WiFi类芯片厂家也非常多:

乐鑫科技(Espressif)
简介:专注于物联网领域,是全球领先的无晶圆厂半导体公司。其推出的 ESP 系列 WiFi 芯片在全球物联网市场应用广泛。
代表产品:ESP8266、ESP32 等。ESP8266 是一款高性价比的单芯片,集成了 TCP/IP 协议栈,可独立运行或作为从设备连接到其他主机;ESP32 是双核处理器,具备更强大的性能和丰富的外设接口,支持 WiFi 和蓝牙双模通信。
应用场景:智能家居、智能照明、智能穿戴、工业监控等领域。瑞昱(Realtek)
简介:中国台湾的半导体公司,在网络通信芯片领域有深厚的技术积累和广泛的市场份额。
代表产品:RTL8188、RTL8723 等系列芯片。RTL8188 系列具有较高的集成度和稳定性,广泛应用于 USB 无线网卡等设备;RTL8723 系列支持 WiFi 和蓝牙功能,常用于笔记本电脑、平板电脑等移动设备。
应用场景:消费电子、计算机外设等领域。博通集成(Beken)
简介:国内知名的无线通讯集成电路芯片设计公司,专注于无线通讯芯片的研发与销售。
代表产品:BK72XX 系列芯片。该系列芯片集成了高性能的 MCU 和 WiFi 模块,支持多种通信协议,具有低功耗、高集成度等特点。
应用场景:智能家居、智能安防、健康医疗等领域。紫光展锐
简介:是中国集成电路设计产业的龙头企业,在移动通信和物联网领域拥有丰富的产品线和技术实力。
代表产品:春藤系列芯片在物联网领域具有广泛应用,部分产品集成了 WiFi 功能,具备高性能、低功耗等特点。
应用场景:智能终端、车联网、工业物联网等领域。联盛德微电子(WinnerMicro)
简介:专注于无线通信芯片的研发、生产和销售,为客户提供高性能、低功耗的无线通信解决方案。
代表产品:W600、W800 等系列芯片。W600 芯片支持 802.11b/g/n 标准,集成了 32 位 MCU,具有丰富的外设接口;W800 芯片在性能和功能上进一步提升,支持更多的通信协议和应用场景。
应用场景:智能家居、智能玩具、智能电表等领域。翱捷科技(ASR)
简介:一家提供无线通信、超大规模芯片的平台型芯片企业,产品覆盖蜂窝通信芯片、非蜂窝通信芯片等多个领域。
代表产品:ASR650X 等系列 WiFi 芯片,具有高集成度、低功耗等特点,可广泛应用于物联网设备。
应用场景:物联网、智能硬件等领域。

所以不可能等你把所有模块都学习完才开始做项目,更多的是我们需要实现什么功能,用到哪些知识,才针对具体进行学习,而很多其它厂家的芯片,市面上都是没有教程的,这时候应该如何开展应用呢?

这也是这套课程想教给大家的:如何快速上手使用一款新的芯片进行开发。

2.1、如何快速上手开发

无论使用哪个厂家哪款芯片,最高效方法的办法只有两种:官方文档和示例源码。

至于芯片视频教程,其实在企业中选用的芯片,绝大部分是没有视频教程的,技术支持都是不确定项,如果你在头部企业还好,芯片原厂会有专门对接的技术支持,可以大大提高你的开发效率,基本上就是不懂就问,问了就有人答,这是最理想状态,那如果是最坏状态呢?视频教程、论坛、技术支持都没有的情况下,我们如何使用官方文档和示例源码进行开发呢?

我们可以参考以下几个步骤:

  1. 拿到开发板,参考文档,搭建好环境,跑起第一个工程,这就是我们前面的课程内容。
  2. 分解功能,确定需要用到的技术,例如我们项目需要用到按键、指示灯、显示屏、WiFi联网、麦克风,那我们需要关注的就是以下技术点:
按键-》GPIO输入或外部中断
指示灯-》GPIO输出
显示屏-》SPI
联网-》WIFI
麦克风-》I2S

当所有单模块都开发完成,驱动起来后,我们就需要整合,整合过程中可能需要用到操作系统多任务、定时器、消息队列、持久化存储等技术,我们再针对性学习这些技术点。

所以对于我们,必须有针对性了解对应技术,而不是全部都搞明白了才去开发。

所以课程的思路也是这样,不会逐个模块、逐行代码,逐个API接口讲解,只带大家快速了解IDF的功能和结构,后续大家就可以参考官方文档、学长文档、例程源码,逐一学习相关产品开发。

下节课,我们就以需要实现GPIO输出控制LED为例,带大家学会使用IDF进行ESP32开发。

相关文章:

  • PHP7内核剖析 学习笔记 第七章 面向对象
  • 如何减⼩dockerfile⽣成镜像体积?
  • ollama+open-webui搭建可视化大模型聊天
  • Android-MVVM框架学习总结
  • BERT框架:自然语言处理的革命性突破
  • 服务器操作系统调优内核参数(方便查询)
  • SDWebImage源码学习
  • vue组件渲染到iframe里面(同域名下),组件可以在同一项目下维护
  • Linux 部署 RocketMQ
  • oracle数据库查看当前session会话数、查询最大支持连接数、修改最大支持连接数
  • 服务器并发实现的五种方法
  • MCP Server Resource 开发学习文档
  • WebGL基本概念
  • CUDA 加速的基础线性代数库cuBLAS
  • CC53.【C++ Cont】一维前缀和
  • AI编程: OpenAI Codex vs Google Jules vs GitHub Copilot++
  • Java转Go日记(五十四):gin路由
  • 【笔记】修复AttributeError: ‘super‘ object has no attribute ‘__del__‘
  • Qwen3技术报告笔记
  • NLP学习路线图(四):Python编程语言
  • 南京英文网站建设/网站建设推广多少钱
  • wp可以做商城网站吗/近三天时政热点
  • 抚州律师网站建设/网络营销的五个发展阶段
  • 网站怎么做分站/百度seo如何快速排名
  • 企业网站cms源码/网络营销做的比较好的企业
  • 网站建设whjzyh/百度地图客服人工电话