操作环境
使用的是wsl2
s413@Shaox ~> neofetch
-` s413@Shaox
.o+` ----------
`ooo/ OS: Arch Linux on Windows 10 x86_64
`+oooo: Kernel: 5.15.167.4-microsoft-standard-WSL2
`+oooooo: Uptime: 44 mins
-+oooooo+: Packages: 202 (pacman)
`/:-:++oooo+: Shell: fish 3.7.1
`/++++/+++++++: Terminal: Windows Terminal
`/++++++++++++++: CPU: AMD Ryzen 5 5600H with Radeon Graphics (12) @ 3.293GHz
`/+++ooooooooooooo/` GPU: 0bac:00:00.0 Microsoft Corporation Basic Render Driver
./ooosssso++osssssso+` Memory: 482MiB / 6859MiB
.oossssso-````/ossssss+`
-osssssso. :ssssssso.
:osssssss/ osssso+++.
/ossssssss/ +ssssooo/-
`/ossssso+/:- -:/+osssso+-
`+sso+:-` `.-/+oso:
`++:. `-/+/
.` `/
安装Rust
‣
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
## switch nightly
rustup default nightly
## 安装工具链
cargo install ldproxy
## espflash espmonitor
cargo install cargo-espflash
cargo install espflash
cargo install cargo-espmonitor
cargo install espmonitor
设定RISC-V
rustup toolchain install nightly --component rust-src
rustup default nightly
查阅 ‣
riscv32imc-esp-espidf
-C3
xtensa-esp32s3-espidf
-S3
no_std库
rustup target add riscv32imc-esp-espidf # 针对 ESP32-C3
rustup target add xtensa-esp32s3-espidf # 针对 ESP32-S3
std 推荐使用 espup 下载rust对于xtensa
cargo install espup
espup install -t esp32s3,esp32c3
rustup component add rust-analyzer *** 智能提示
# 链接analyer
ln -sf ~/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/rust-analyzer ~/.rustup/toolchains/esp/bin/rust-analyzer
sudo usermod -aG uucp $USER #0r
sudo usermod -aG dialout $USER #or
newgrp dialout
配置环境变量
## config.fish
alias er='. $HOME/esp/esp-idf/export.fish'
#set -gx IDF_TOOLS_PATH $HOME/.espressif/
if test -e $HOME/export-esp.sh
source $HOME/export-esp.sh
end
第一步 idf 下载
如果使用idf 参阅‣ 注意下载的时候网络条件, 如果不全部安装可能会有一些bug建议不要单独安装
Debug
prob-rs
open
解决 一些内存的问题
通常不是espressif 官方的板子 可能会遇见使用espflash 去烧写固件的时候内存对不上,这个时候就需要配置sdkconfig.defaults
这个文件 也许也靠分区表来识别
配置 选项有很多
例如 Build type
相关
CONFIG_APP_BUILD_TYPE
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP
CONFIG_APP_REPRODUCIBLE_BUILD
CONFIG_APP_NO_BLOBS
但是 我是来找flash-size
相关的内容
CONFIG_ESPTOOLPY_FLASHSIZE
SPI flash size, in megabytes
Available options:
1 MB (CONFIG_ESPTOOLPY_FLASHSIZE_1MB)
2 MB (CONFIG_ESPTOOLPY_FLASHSIZE_2MB)
4 MB (CONFIG_ESPTOOLPY_FLASHSIZE_4MB)
8 MB (CONFIG_ESPTOOLPY_FLASHSIZE_8MB)
16 MB (CONFIG_ESPTOOLPY_FLASHSIZE_16MB)
32 MB (CONFIG_ESPTOOLPY_FLASHSIZE_32MB)
64 MB (CONFIG_ESPTOOLPY_FLASHSIZE_64MB)
128 MB (CONFIG_ESPTOOLPY_FLASHSIZE_128MB)
sometime enconter this
[DEBUG] (1) wlink::probe: Opening serial port: "/dev/ttyACM0"
Error: Serial port error: Permission denied
Caused by:
Permission denied
run this command stat /dev/ttyACM0
s413@Shaox ~/E/C/blink (main) [SIGINT]> stat /dev/ttyACM0
File: /dev/ttyACM0
Size: 0 Blocks: 0 IO Block: 4096 character special file
Device: 0,5 Inode: 414 Links: 1 Device type: 166,0
Access: (0660/crw-rw----) Uid: ( 0/ root) Gid: ( 986/ uucp)
Access: 2025-04-28 18:49:12.483272344 +0800
Modify: 2025-04-28 18:48:59.483272344 +0800
Change: 2025-04-28 18:48:59.483272344 +0800
Birth: 2025-04-28 18:48:59.479272346 +0800
add Group