1. 在Ubuntu官網下載Ubuntu server 20.04版本https://releases.ubuntu.com/20.04.6/
2. 在vmware下安裝Ubuntu
3. 改Ubuntu靜態IP
$ sudo vi /etc/netplan/00-installer-config.yaml
# This is the network config written by ‘subiquity’
network:
renderer: networkd
ethernets:
ens33:
# dhcp4: true
addresses:
- 192.168.4.251/24
nameservers:
addresses: [4.2.2.2,8.8.8.8]
routes:
- to: default
via: 192.168.4.1
version: 2$ sudo netplan apply
$ ip addr show ens33
$ ip route show
$ reboot
3. 使用SecureCRT使用SSH遠程連接虛擬機的ubuntu
4. 安裝各種必要的工具
sudo apt-get install git wget flex bison gperf python3-pip python3-venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0 net-tools
5. 新建esp32目錄并進入
$ mkdir esp32
$ cd esp32
6. 拉取gitee工具(原因是從官方下載大概率會失敗)
$ git clone https://gitee.com/EspressifSystems/esp-gitee-tools.git
7. 執行gitee工具切換鏡像腳本
$ cd esp-gitee-tools
$ ./jihu-mirror.sh set
8. 拉取esp-idf源碼
$ cd ..
$ git clone --recursive https://github.com/espressif/esp-idf.git
9. 切換esp-idf版本分支到v5.2
$ cd esp-idf
$ git checkout v5.2
$ git submodule update --init --recursive
如果提示失敗或有錯誤試下這句:../esp-gitee-tools/submodule-update.sh
10. 更換pip源
$ pip config set global.index-url http://mirrors.aliyun.com/pypi/simple
$ pip config set global.trusted-host mirrors.aliyun.com
11. 安裝編譯工具
$ ../esp-gitee-tools/install.sh
12. 設置環境變量并將環境變量放到.bashrc中(這樣下次啟動后上一步設置的環境變量會重新加載)
$ source export.sh
$ echo "source ~/esp32/esp-idf/export.sh" >> ~/.bashrc
13. 設置USB串口權限(解決下載代碼時報USB串口權限問題)
$ sudo usermod -aG dialout usrname usrname需要換成你的用戶名
14. 重啟
15. windows安裝VSCODE,并安裝如下插件
16. 通過以上插件遠程連接ubuntu
這樣就可以建立遠程連接了,代碼就可以在vscode進行查看和更改,但是我們會發現每次都需要輸入密碼,我們通過如下方式解決
解決使用VsCode遠程ssh連接虛擬機ubuntu需要重復輸入密碼
17. VSCode中為遠程主機安裝插件
按照上圖依次安裝如下插件
18. 進行插件配置
- c/c++插件
- 改ESP-IDF配置
鍵盤同時按下ctl+shift+p,在彈出的對話框輸入如下,這樣我們就可以任意查看和跳轉代碼位置了。
19. 建立第一個工程
- 使用vscode遠程連接虛擬機,在終端窗口進行操作
- 創建存放工程的目錄并進入目錄
mkdir esp32-prj
cd esp32-prj
- 使用命令創建工程
idf.py create-project helloworld
- 進入目錄更改目標芯片,一般默認為esp32
idf.py set-target esp32-s3
- 進行第一次編譯
idf.py build
- 打開工程
- 如圖操作,這樣才可以方便的跳轉和查看代碼,每個新的工程都需要執行一次
- 編譯代碼
- 燒錄,先連接開發板,并保證開發板是連接到了虛擬機
idf.py flash
- 監視開發板執行情況
idf.py monitor
退出監控使用CTL+]組合鍵
- 燒錄指令可以和監控指令可以放在一起執行
idf.py flash monitor