0a6aaf12ad
Co-authored-by: Supper Thomas <78900636@qq.com> |
||
---|---|---|
.. | ||
.vscode | ||
builtin_imgs | ||
drivers | ||
idf_port | ||
images | ||
main | ||
.config | ||
CMakeLists.txt | ||
Kconfig | ||
Makefile | ||
README.md | ||
README_ZH.md | ||
SConscript | ||
SConstruct | ||
rtconfig.h | ||
rtconfig.py | ||
rtt.patch | ||
sdkconfig |
README.md
ESP32-C3 BSP Introduction
中文 | English
This document records the execution instruction of the BSP (board support package) for the ESP32-C3 development board.
The document is covered in two parts:
- Board Resources Introduction
- Quickly Get Started
Resources Introduction
We tested 2 development boards, it all works, but due to the different LED pins of the two development boards, so we'll need to select the corresponding development board in the menuconfig.
The mainly-used resources of LUATOS_ESP32C3 are shown as follows:
- MCU: esp32-c3,Main Frequency 160MHz, 407.22 CoreMark; 2.55 CoreMark/MHz
- Built-in Chip: 384KB ROM, 400KB SRAM
- Peripherals
- Red LED: 2, LED: D4 (IO12), D5(IO13)
- Button: 2, K1(BOOT) K2(RST)
- SPI FLASH: 4M
- Common-used interfaces: USB, UART, etc.
For more details about this board, please refer to Here.
Peripheral Condition
Each peripheral supporting condition for this BSP is as follows:
On-board Peripherals | Support | Remark |
---|---|---|
GPIO | Support | |
UART | Support | Using LUATOS_ESP32C3 development board requires connecting serial port to USB chip UART0_TX and UART0_RX (such as CP2102) |
JTAG debug | Support | ESP32C3 usb-linked development boards can be debugged |
Environment construction and compilation
-
Download the RISC-V toolchain:
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
-
Configure the path of the toolchain:
Add the local path of the
RISC-V
toolchain to theEXEC_PATH
variable in thertconfig.py
file, or specify the path by setting theRTT_EXEC_PATH
environment variable, for example:export RTT_EXEC_PATH=/opt/riscv32-esp-elf/bin
-
Compile
Install esptool to convert ELF files to binary flash files:
pip install esptool
Execute the following command on the Linux platform to configure:
scons --menuconfig
It will automatically download env-related scripts to the
~/.env
directory, and then execute:source ~/.env/env.sh cd bsp/ESP32_C3/ pkgs --update
It will automatically download
RT-Thread-packages/esp-idf
andRT-Thread-packages/FreeRTOS-Wrapper
, after updating the software packages, executescons
to compile the board support package.If the compilation is successful,
rtthread.elf
,rtthread.bin
files will be generated.
Download and program
-
Programming tool download
The current bsp test uses the
flash_download_tool_3.9.4
tool to program without errors.Programming tool download address: https://www.espressif.com.cn/sites/default/files/tools/flash_download_tool_3.9.4_0.zip
-
Programming tool configuration
Chip model selection
ESP32-C3
Configure the binary file and offset address as follows:
binary file offset address bootloader.bin 0x0 partition-table.bin 0x8000 rtthread.bin 0x10000 Among them,
bootloader.bin
andpartition-table.bin
can be found in thebsp/ESP32_C3/builtin_imgs
folder. After the configuration is completed, the screenshot is as follows, and then clickSTART
to download.
Notes
- The basic functions are now supported, but it needs more, welcome any contributions and feedback.
Maintainer:
- supperthomas email address: 78900636@qq.com
- tangzz98 email address: tangz98@outlook.com
Special thanks to chenyingchun0312 for providing support on the RISC-V part working.