4.4 KiB
ESP32-C3 BSP 说明
中文 | English
简介
本文档为基于RT-THREAD的乐鑫ESP32-C3的ESP32C3 BSP (板级支持包) 说明。
主要内容如下:
- 开发板资源介绍
- BSP 快速上手
通过阅读快速上手章节开发者可以快速地上手该 BSP,将 RT-Thread 运行在开发板上。
开发板介绍
目前测试了两款开发板,运行都正常,由于两款开发板LED小灯引脚不同,请在menuconfig中选择自己手上的开发板。已测开发板外观如下图所示:
该LUATOS_ESP32C3开发板常用 板载资源 如下:
- MCU:esp32-c3,主频 160MHz, 407.22 CoreMark; 2.55 CoreMark/MHz
- 芯片内置:384KB ROM, 400KB SRAM,
- 常用外设
- 红色LED:2个,LED: D4 (IO12), D5(IO13)
- 按键:2个,K1(BOOT) K2(RST)
- SPI FLASH: 4M
- 常用接口:USB UART等
开发板更多详细信息请参考 ESP32-C3开发板介绍。
外设支持
本 BSP 目前对外设的支持情况如下:
片上外设 | 支持情况 | 备注 |
---|---|---|
GPIO | 支持 | |
UART | 支持 | 使用LUATOS_ESP32C3开发板需要在UART0_TX和UART0_RX连接串口转USB芯片(如CP2102) |
JTAG调试 | 支持 | ESP32C3采用USB方式和PC链接的开发板可以调试 |
环境搭建及编译
-
下载 RISC-V 工具链:
wget https://github.com/espressif/crosstool-NG/releases/download/esp-2022r1-RC1/riscv32-esp-elf-gcc11_2_0-esp-2022r1-RC1-linux-amd64.tar.xz tar xf riscv32-esp-elf-gcc11_2_0-esp-2022r1-RC1-linux-amd64.tar.xz
-
配置工具链的路径:
在
bsp/ESP32_C3/rtconfig.py
文件中将RISC-V
工具链的本地路径添加到EXEC_PATH
变量中,或者通过设置RTT_EXEC_PATH
环境变量指定路径,例如:export RTT_EXEC_PATH=/opt/riscv32-esp-elf/bin
-
编译
安装 esptool 用于转换 ELF 文件为二进制烧录文件:
pip install esptool
在 Linux 平台下进入
bsp/ESP32_C3/
执行以下命令进行配置:scons --menuconfig
它会自动下载env相关脚本到
~/.env
目录,然后执行:source ~/.env/env.sh cd bsp/ESP32_C3/ pkgs --update
它会自动下载
RT-Thread-packages/esp-idf
和RT-Thread-packages/FreeRTOS-Wrapper
,更新完软件包后,执行scons
来编译这个板级支持包。如果编译成功,将生成
rtthread.elf
、rtthread.bin
文件。
下载烧录
-
烧录工具下载
当前bsp测试使用
flash_download_tool_3.9.4
工具进行烧录无误。烧录工具下载地址:https://www.espressif.com.cn/sites/default/files/tools/flash_download_tool_3.9.4_0.zip
-
烧录工具配置
芯片型号选择
ESP32-C3
将二进制文件与偏移地址配置如下:
二进制文件 偏移地址 bootloader.bin 0x0 partition-table.bin 0x8000 rtthread.bin 0x10000 其中
bootloader.bin
和partition-table.bin
可在bsp/ESP32_C3/builtin_imgs
文件夹下找到,配置完成后截图如下,之后点击START
即可下载。
注意事项
- 目前RTTHREAD支持起来了,后续会需要继续完善一些其他功能,刚开始使用ESP32,欢迎小伙伴一起来讨论和贡献。感兴趣的可以通过公众号
Thomas的小火车
来联系
联系人信息
维护人:
特别感谢
- 感谢chenyingchun0312 提供了RISCV的强力支持