硬件平台: 树莓派4B
OS: 2020-02-13-raspbian-buster
esp-idf版本: v4.0
toolchain版本: esp-2019r2
从零开始编译esp32工具链
参考官方wiki https://docs.espressif.com/projects/esp-idf/zh_CN/v4.0/get-started/linux-setup-scratch.html
0 安装软件包
终端执行以下命令:
sudo apt-get install git wget libncurses-dev flex bison gperf python python-click python-pip python-setuptools python-serial python-cryptography python-future python-pyparsing python-pyelftools cmake ninja-build ccache libffi-dev libssl-dev
1 获取esp-idf
在 ~/esp 目录执行以下命令
git clone -b v4.0 --recursive https://github.com/espressif/esp-idf.git
2 获取工具链
在 ~/esp 目录执行以下命令
wget https://github.com/espressif/crosstool-NG/releases/download/esp-2019r2/xtensa-esp32-elf-gcc8_2_0-esp-2019r2-linux-armel.tar.gz
3 设置环境变量
在终端执行以下命令
vi ~/.bashrc
在文件末添加以下内容:
export IDF_PATH=~/esp/esp-idf
export PATH="$HOME/esp/xtensa-esp32-elf/bin:$IDF_PATH/tools:$PATH"
4 安装 Python 软件包
在终端执行以下命令
cd ~/esp/esp-idf
python -m pip install --user -r $IDF_PATH/requirements.txt
5 连接开发板
终端运行 `lsusb`,检查开发板是否连接成功,
终端运行 `dmesg`, 获取端口号
6 编译例程
在终端执行以下命令
cd ~/esp
cp esp-idf/examples/get-started/hello_world/ . -rf
cd hello_world
make menuconfig
进入menuconfig后,在Serial flasher config菜单设置串口端口
执行以下命令编译
idf.py build
7 烧录固件
执行以下命令编译
idf.py -p /dev/ttyUSB0 flash/dev/ttyUSB0根据自己的情况填写
8 监视器
执行以下命令打开监视器
idf.py -p /dev/ttyUSB0 monitor
参考官方wiki https://docs.espressif.com/projects/esp-idf/zh_CN/v4.0/get-started/index.html#esp-idf