rt-thread/bsp/ESP32_C3/README_ZH.md

135 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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. 配置工具链的路径:
在`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
```
在 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)
## 注意事项
- 目前RTTHREAD支持起来了后续会需要继续完善一些其他功能刚开始使用ESP32欢迎小伙伴一起来讨论和贡献。感兴趣的可以通过公众号`Thomas的小火车`来联系
## 联系人信息
维护人:
- [supperthomas](https://github.com/supperthomas) 邮箱:<78900636@qq.com>
- [tangzz98](https://github.com/tangzz98) 邮箱:<tangz98@outlook.com>
## 特别感谢
- 感谢[chenyingchun0312](https://github.com/chenyingchun0312) 提供了RISCV的强力支持