esp32-C3固件烧录用户手册

news/2025/2/15 23:13:42/

esp32-C3固件烧录用户手册1.4

文章目录

  • esp32-C3固件烧录用户手册1.4
    • 烧录
      • 所需硬件
      • 软件工具
        • vscode+platformIO
        • flash_download_tools
    • 插座与USB转TTL模块之间接线
      • esp32-C3版本插座(底板4针)
    • bin固件和烧录地址
      • 获取详细烧录地址和信息
      • 获取文件系统程序详细烧录地址和信息
    • vscode+platformIO烧录方法
      • 编译和下载
      • 将设备进入下载模式
    • flash_download_tools烧录方法
      • 打开flash_download_tools
      • 选择ESP32-C3,其他默认,如图
      • 选择烧录固件和填对应地址
      • 选择串口,波特率,点击开始
      • 将设备进入下载模式
    • esptool.py烧录方法
      • 安装esptool
      • 烧录
        • 擦除flash
        • 烧录*.bin

温馨提示:

1.esp32-C3 BOOT脚为GPIO9,需要从芯片小板中焊接引出

2.芯片小板中已经预留了所有烧录相关的引脚,大家可以按需焊接引线

3.程序下载完,使用串口查看log时,需要使用220v供电使用(请务必准守用电安全)。

原因:由于插座中包含继电器,计量计等耗电设备,所以usb转串口提供的3.3V电压和电流可能会出现供电不足,表现为usb转串口与电脑连接断断续续,导致无法查看log。

烧录

所需硬件

智能插座套件 1个

usb转ttl模块 1个

杜邦线若干 6-7条

获取方式:淘宝自行购买

软件工具

vscode+platformIO
适用情况
研发学习,测试阶段,有工程源码,可以使用该开发工具,编译源码和下载程序到板子获取方式
1)在 `插座通用资料/软件工具/开发软件(platformIO自行安装)` 目录下获取,
2)亦可访问vscode官网下载   https://code.visualstudio.com/
flash_download_tools

flash_download_tool_3.9.5:是一款非常实用的ESP模组烧录软件

适用情况
工厂阶段,无源码,仅有bin,可以使用该工具进行固件下载获取方式
1)在 `插座通用资料/软件工具/固件下载` 目录下获取,
2)亦可访问乐鑫官网下载   https://www.espressif.com/zh-hans/support/download/other-tools

插座与USB转TTL模块之间接线

插座底板和芯片小板位置说明

image-20231008154510879

从芯片小板焊接出3.3V,gnd,RX,TX,IO9,其中3.3V,gnd,RX,TX接USB转ttl的3.3V,gnd,TX,RX;IO9在下载模式时要接底板中的GND即拉低

以下线颜色说明(以芯片小板端引脚标号为准):

红色:3.3V

黑色:gnd

紫色:RX

蓝色 :TX

黄色:IO9

esp32-C3版本插座(底板4针)

image-20231008155610170

image-20231008160113736

bin固件和烧录地址

序号bin名描述烧录地址适用产品
1bootloader.bin启动引导0x0适用于ssb,ssc类产品
2partitions.bin分区0x8000适用于ssb,ssc类产品
3boot_app0.bin启动app00xe000适用于ssb,ssc类产品
4firmware.binplatformIO生成的主要用户程序0x10000适用于ssb,ssc类产品
5littlefs.binplatformIO生成的文件系统0x3B0000适用于ssb,ssc类产品

查看bin地址(以下部分仅供参考)

vscode+platformIO开发方式可以在项目下新建终端,然后输入

获取详细烧录地址和信息

pio run -v -t upload

image-20231008164545689

得知:主要信息如下

–chip esp32c3

–flash_mode dio

–flash_freq 80m

–flash_size 4MB 0x0000

项目工程下.pio\build\esp32-c3-devkitm\bootloader.bin 0x0

项目工程下.pio\build\esp32-c3-devkitm\partitions.bin 0x8000

C盘用户目录.platformio\packages\framework-arduinoespressif32\tools\partitions\boot_app0.bin 0xe000

项目工程下 .pio\build\esp32-c3-devkitm\firmware.bin 0x10000

获取文件系统程序详细烧录地址和信息

pio run -v -t uploadfs 

得知:项目工程下 .pio\build\esp32-c3-devkitm\littlefs.bin 0x3B0000

另外,如果有自定义partiton.csv文件时,可参考其中的地址定义。

乐鑫官方固件下载地址:

https://docs.espressif.com/projects/esp-at/zh_CN/latest/esp32c3/AT_Binary_Lists/ESP32-C3_AT_binaries.html

esptool --chip esp32 --port COM11 write_flash -z 0x0000 D:\aa\firmware.bin

vscode+platformIO烧录方法

说明:为了减少焊接引线,这里使用给芯片断电上电方式来给芯片复位。亦可焊接出EN针脚引线,将EN拉低拉高来给芯片复位。

编译和下载

  1. 打开代码工程

  2. 首先点击 编译 按钮进行编译工程,

  3. 先进入下载模式(参考4.2),然后再点击下载 按钮

编译和下载 按钮位置截图

image-20230818113541275

编译完成截图

image-20231008160924672

将设备进入下载模式

进入下载模式方法
1. 先将esp32-C3模块断电(断开usb转串口模块与esp32-C3之间的3.3V接线)
2. 将esp32-C3模块的IO9拉低(即芯片小板IO9与底板的GND连接)
3. 然后再给esp32-C3模块上电(连接上usb转串口模块与esp32-C3之间的3.3V接线)
4. 当下载时,IO9也要一直拉低(即芯片小板IO9与底板的GND一直连接)
5. 等到下载完成。注意esp32-C3的IO9需要从芯片小板中引出

image-20231008161717753

等待下载完成即可

image-20231008161808613

flash_download_tools烧录方法

打开flash_download_tools

选择ESP32-C3,其他默认,如图

image-20231008203845619

选择烧录固件和填对应地址

选择烧录的固件,地址参考本文 3章节bin固件和烧录地址,具体参考配置参考下图

image-20231008203310322

选择串口,波特率,点击开始

最后,选择com口(usb转串的串口号)和比特率,点击START开始

image-20231008203448094

将设备进入下载模式

进入下载模式方法
1. 先将esp32-C3模块断电(断开usb转串口模块与esp32-C3之间的3.3V接线)
2. 将esp32-C3模块的IO9拉低(即芯片小板IO9与底板的GND连接)
3. 然后再给esp32-C3模块上电(连接上usb转串口模块与esp32-C3之间的3.3V接线)
4. 当下载时,IO9也要一直拉低(即芯片小板IO9与底板的GND一直连接)
5. 等到下载完成。注意esp32-C3的IO9需要从芯片小板中引出

image-20231008202948839

esptool.py烧录方法

安装esptool

前提需要安装python3

查看是否安装python方法,可以打开cmd,输入python回车,查看python版本,如未安装请自行百度安装。如我这边截图:

image-20231008193704455

安装好python后,在命令行窗口

pip install esptool

image-20231008193934283

烧录

擦除flash
esptool.py --port COM11 erase_flash说明: --port  pc端与设备连接的usb转串口的端口号erase_flash 擦除操作

image-20231008194104638

烧录*.bin

esptool.py --chip esp32-C3 --port COM11  --baud 921600 --before default_reset --after hard_reset  write_flash -z --flash_mode dio --flash_freq 80m  --flash_size 4MB 0x0000  D:\aa\bootloader.bin 0x8000 D:\aa\partitions.bin 0xe000 D:\aa\boot_app0.bin 0x10000 D:\aa\firmware.bin 0x3B0000 D:\aa\littlefs.bin说明: --chip 芯片型号,根据自己情况修改--port  pc端与设备连接的usb转串口的端口号  根据自己情况修改--baud  烧录速度  根据自己情况修改--before default_reset --after hard_reset  前后都复位write_flash 写flash--flash_mode dio 模式dio   根据自己情况修改--flash_freq 80m  频率80M  根据自己情况修改--flash_size 4MB  大小4M   根据自己情况修改地址+bin文件                根据自己情况修改

image-20231008201518794


http://www.ppmy.cn/news/1177970.html

相关文章

10935 - Throwing cards away I (UVA)

题目链接如下&#xff1a; Online Judge 代码如下&#xff1a; #include <cstdio> #include <queue> #include <vector> #include <utility> // #define debugint n; std::queue<int> remaining; std::vector<int> discarded;void clea…

在CentOS 7中手工打造和运行xml文件配置的Servlet,然后使用curl、浏览器、telnet等三种工具各自测试

下载Openjdk并配置环境变量 https://jdk.java.net/java-se-ri/11-MR2是官网下载Openjdk 11的地方。 sudo wget https://download.java.net/openjdk/jdk11.0.0.1/ri/openjdk-11.0.0.1_linux-x64_bin.tar.gz下载openjdk 11。 sudo mkdir -p /usr/openjdk11创建目录&#xff…

使用Docker部署Apache Superset并实现公网远程访问

大数据可视化BI分析工具Apache Superset实现公网远程访问 文章目录 大数据可视化BI分析工具Apache Superset实现公网远程访问前言1. 使用Docker部署Apache Superset1.1 第一步安装docker 、docker compose1.2 克隆superset代码到本地并使用docker compose启动 2. 安装cpolar内网…

RabbitMQ生产者的可靠性

目录 MQ使用时会出现的问题 生产者的可靠性 1、生产者重连 2、生产者确认 3、数据持久化 交换机持久化 队列持久化 消息持久化 LazyQueue懒加载 MQ使用时会出现的问题 发送消息时丢失&#xff1a; 生产者发送消息时连接MQ失败生产者发送消息到达MQ后未找到Exchange生产…

大模型 | NEFTune之引入随机噪声对大模型训练的收益

大模型 | NEFTune之引入随机噪声对大模型训练的收益 paper中提到&#xff0c;在模型foward过程中&#xff0c;对inputs_embedding增加适度的随机噪声&#xff0c;会带来显著的收益。 Paper: https://arxiv.org/pdf/2310.05914.pdf Github: https://github.com/neelsjain/NEFT…

Linux docker 安装 部署

docker 安装 linux系统离线安装docker 如何使用docker部署c/c程序 常用命令 给予 docker 访问 gui 的权限 在 /etc/profile 末尾添加 if [ "$DISPLAY" ! "" ] thenxhost fi在执行 更新 source /etc/profiledocker下载镜像 docker search gcc #搜索d…

淘宝API接口获取商品信息,订单管理,库存管理,数据分析

在淘宝开放平台中&#xff0c;每个API接口都有相应的文档说明和授权机制&#xff0c;以确保数据的安全性和可靠性。开发者可以根据自己的需求选择相应的API接口&#xff0c;并根据文档说明进行调用和使用。 淘宝开放平台API接口是一套REST方式的开放应用程序编程接口&…

2023.10.26-SQL测试题

employee表&#xff1a; department表&#xff1a; job表&#xff1a; location表&#xff1a; 题目及答案&#xff1a; -- (1).查询工资大于一万的员工的姓名(first_name与last_name用“.”进行连接)和工资-- select CONCAT(first_name,.,last_name) as 姓名 ,salary -…