IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 理解ESP32 Flash烧写的DOUT/DIO/QOUT/QIO配置 -> 正文阅读

[嵌入式]理解ESP32 Flash烧写的DOUT/DIO/QOUT/QIO配置

一、目的

????????刚接触ESP32开发的同学如果不是使用Ubuntu进行烧写的话,可能在使用乐鑫的Flash烧写工具时可能会有这样的疑问

? ? ? ? Flash工具下载地址

????????工具 | 乐鑫科技 (espressif.com.cn)https://www.espressif.com.cn/zh-hans/support/download/other-tools

????????

????????上图中的SPI Mode如何选择,到底什么意思呢?

????????另外在Ubuntu下开发时,我们执行下面两条命令时

idf.py set-target esp32
idf.py menuconfig

命令行界面会弹出一个菜单,如下

??

? ? ? ? 注意上图中Flash SPI mode选项

? ? ? ? 这边就是我们可以选择的mode配置项?

下面的截图的是ESP32S3芯片上的,增加了一个QPI选项

????????其实要搞清楚这个,需要的基础知识还是蛮多的,本篇就给大家讲解一下里面涉及到的知识点。

? ? ? ? 关于乐鑫Flash工具如何使用,官方工具包里面有对应的使用文档,后面我会结合具体的例子给大家讲解下。

? ? ? ? 需要特别注意的是DoNotChgBin这个选项,因为我们编译固件时候已经通过menuconfig进行过Flash相关配置,故我们编译出来的固件里面已经有了设定的信息,所以稍写工具其实就不用再设置了。

? ? ? ? 另外需要注意的是每个ESP32模组并不是都是同时支持这些SPI Mode的,有些可能是因为使用的Flash本身不支持,有些可能是Flash本身的WP/HOLD这些引脚并没有接到模组上,使用时一般建议DIO或者DOUT,如果明确知道模组的信息,就选择其最优的配置。

? ? ? ? 当然并不是说QIO一定比DIO快,时钟频率的设置也是一个重要项。

二、介绍

? ? ? ? 要理解DOUT/DIO/QOUT/QIO这些含义,首先需要了解SPI/Dual SPI/Quad SPI/QPI这些知识点,请参考这篇博文(一定要看

????????理解SPI/Dual SPI/Quad SPI/QPI之间的区别_coder.mark的博客-CSDN博客https://blog.csdn.net/tianizimark/article/details/124608851

? ? ? ? 乐鑫官网的资料

????????SPI Flash Modes - ESP32 - — esptool.py latest documentation (espressif.com)https://docs.espressif.com/projects/esptool/en/latest/esp32/advanced-topics/spi-flash-modes.html#spi-flash-modes?

三、实战

? ? ? ? 有了上面的知识点后,我们再来看下esp-idf里面关于Flash SPI mode的配置项

? ? ? ? 查看文件components/hal/include/hal/spi_flash_types.h

? ? SPI_FLASH_SLOWRD 标准SPI,对时钟速度有限制(速率较慢)
? ? SPI_FLASH_FASTRD 标准SPI
? ? SPI_FLASH_DOUT 双线SPI(Dual SPI)只在数据阶段使用两根数据线通信
? ? SPI_FLASH_DIO?双线SPI(Dual SPI)地址、数据阶段都使用两根数据线通信
? ? SPI_FLASH_QOUT 四线SPI(Qual SPI)只在数据阶段使用四根数据线通信
? ? SPI_FLASH_QIO?四线SPI(Qual SPI)地址、数据阶段使用四根数据线通信
? ? SPI_FLASH_OPI_STR?四线SPI(Qual SPI)命令、地址、数据阶段(所有阶段)都使用四根数据线通信,并且一个时钟传输一位
? ? SPI_FLASH_OPI_DTR?四线SPI(Qual SPI)命令、地址、数据阶段(所有阶段)都使用四根数据线通信,并且一个时钟传输两位

? ? ? ? 好,本篇的内容基本结束,相信大家现在都能理解这些选项的含义了。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-05-10 12:04:54  更:2022-05-10 12:05:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/30 1:02:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码