rt-thread/bsp/ESP32_C3/README_ZH.md

135 lines
4.4 KiB
Markdown
Raw Normal View History

2022-08-31 13:50:00 +08:00
# ESP32-C3 BSP 说明
中文 | [English](README.md)
## 简介
本文档为基于RT-THREAD的乐鑫ESP32-C3的[ESP32C3](http://luatos.com/t/esp32c3) BSP (板级支持包) 说明。
主要内容如下:
- 开发板资源介绍
- BSP 快速上手
通过阅读快速上手章节开发者可以快速地上手该 BSP将 RT-Thread 运行在开发板上。
## 开发板介绍
目前测试了两款开发板运行都正常由于两款开发板LED小灯引脚不同请在menuconfig中选择自己手上的开发板。已测开发板外观如下图所示
- [LUATOS_ESP32C3](https://wiki.luatos.com/chips/esp32c3/board.html)
![LUATOS_ESP32C3](images/luatos_esp32c3.png)
- [HX-DK-商](https://docs.wireless-tech.cn/doc/7/)
![hongxu](images/hx_shang.png)
该LUATOS_ESP32C3开发板常用 **板载资源** 如下:
- MCU[esp32-c3](https://www.espressif.com/sites/default/files/documentation/esp32-c3_datasheet_en.pdf),主频 160MHz 407.22 CoreMark; 2.55 CoreMark/MHz
- 芯片内置384KB ROM, 400KB SRAM,
- 常用外设
- 红色LED2个LED: D4 (IO12), D5IO13
- 按键2个K1BOOT K2(RST)
- SPI FLASH: 4M
- 常用接口USB UART等
开发板更多详细信息请参考 [ESP32-C3开发板介绍](https://wiki.luatos.com/chips/esp32c3/board.html)。
## 外设支持
本 BSP 目前对外设的支持情况如下:
| **片上外设** | **支持情况** | **备注** |
| :----------------- | :----------: | :------------------------------------- |
| GPIO | 支持 | |
| UART | 支持 | 使用LUATOS_ESP32C3开发板需要在UART0_TX和UART0_RX连接串口转USB芯片如CP2102|
| JTAG调试 | 支持 | ESP32C3采用USB方式和PC链接的开发板可以调试 |
## 环境搭建及编译
1. 下载 RISC-V 工具链:
```sh
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
```
2. 配置工具链的路径:
2023-08-28 09:54:08 +08:00
在`bsp/ESP32_C3/rtconfig.py`文件中将`RISC-V`工具链的本地路径添加到`EXEC_PATH`变量中,或者通过设置 `RTT_EXEC_PATH`环境变量指定路径,例如:
```sh
export RTT_EXEC_PATH=/opt/riscv32-esp-elf/bin
```
3. 编译
安装 esptool 用于转换 ELF 文件为二进制烧录文件:
```sh
pip install esptool
```
2023-08-28 09:54:08 +08:00
在 Linux 平台下进入`bsp/ESP32_C3/`执行以下命令进行配置:
```
scons --menuconfig
```
它会自动下载env相关脚本到`~/.env`目录,然后执行:
```sh
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`文件。
## 下载烧录
1. 烧录工具下载
当前bsp测试使用`flash_download_tool_3.9.4`工具进行烧录无误。
烧录工具下载地址:[https://www.espressif.com.cn/sites/default/files/tools/flash_download_tool_3.9.4_0.zip](https://www.espressif.com.cn/sites/default/files/tools/flash_download_tool_3.9.4_0.zip)
2. 烧录工具配置
芯片型号选择`ESP32-C3`
将二进制文件与偏移地址配置如下:
| 二进制文件 | 偏移地址 |
| ------------------- | -------- |
| bootloader.bin | 0x0 |
| partition-table.bin | 0x8000 |
| rtthread.bin | 0x10000 |
其中`bootloader.bin`和`partition-table.bin`可在`bsp/ESP32_C3/builtin_imgs`文件夹下找到,配置完成后截图如下,之后点击`START`即可下载。
![flash_download_tools](images/flash_download_tools.png)
2022-08-31 13:50:00 +08:00
## 注意事项
- 目前RTTHREAD支持起来了后续会需要继续完善一些其他功能刚开始使用ESP32欢迎小伙伴一起来讨论和贡献。感兴趣的可以通过公众号`Thomas的小火车`来联系
2022-08-31 13:50:00 +08:00
## 联系人信息
维护人:
- [supperthomas](https://github.com/supperthomas) 邮箱:<78900636@qq.com>
- [tangzz98](https://github.com/tangzz98) 邮箱:<tangz98@outlook.com>
2022-08-31 13:50:00 +08:00
## 特别感谢
- 感谢[chenyingchun0312](https://github.com/chenyingchun0312) 提供了RISCV的强力支持