老宇哥帶你玩轉ESP32:02使用VSCode+PlatformIO搭建開發環境

2022-01-04 跳動的字節

上一篇文章給大家介紹了ESP32使用Arduino官方IDE進行開發的流程。

老宇哥帶你玩轉ESP32:01入門介紹 (點擊閱讀)

有部分同學反饋下載的時候特別慢,這個庫是託管在GitHub的,國內有部分網絡訪問不了或者是非常慢,其實有一些方法是可以加快下載速度的,比如修改hosts文件,可以加速域名解析,具體方法大家自行找辦法,有效的查資料,找資源也是嵌入式開發一種很重要的能力,大家要享受這種解決問題的快感。

Arduino IDE本來就是為創客們開發的,雖然沒代碼提示功能,文件的關係也不清晰,函數不能跳轉,頭文件也打不開,但人家的初衷就是為了簡單而生的;但還是有一些同學喜歡高級點的IDE,也沒問題,在VScode中安裝PlatformIO IDE插件能滿足你的所有要求。

先簡單介紹下PlatformIO

PlatformIO 是一個用於物聯網開發的開源生態系統。它提供跨平臺的開發環境和統一的調試器,還支持遠程單元測試和固件更新,曾經獲得過IOT最佳開發軟體和工具獎,支持1000+以上的開發板以及50多個開發平臺,還有12000+的庫,讓開發人員不必要浪費時間在環境搭建上,可以更多時間的去寫自己的邏輯,配合VScode的文件管理以及友好的界面,簡直是嵌入式界的開發神器!

1、安裝VSCode:

https://code.visualstudio.com/Download

根據自己的系統安裝即可。

2、安裝Python環境

https://www.python.org/getit/

根據自己的系統安裝最新版本即可,記得在安裝前要勾選添加PATH變量。

3、安裝PlatformIO插件

啟動VSCode,在左邊的的擴展應用中搜索PlatformIO,點擊安裝即可,安裝過程如果需要安裝其他擴展插件,就默認安裝就好了,這個安裝不會很久,等到提示安裝成功之後,重啟VScode。

我們發現左邊多了一個新的插件圖標,我們點擊一下,然後點擊PIO Home那裡的Open,再右邊點擊新建項目,我們填寫我們的項目名稱等信息,這裡建一個ESP32_Demo的工程,板子搜索esp32然後選擇ESpressif ESP32 Dev Module這個最常規的板子,框架就選擇Arduino,之後點擊Finish新建項目。

這個時候會下載開發所需的所有文件,編譯工具,各種依賴自動搞定,時間會長一點,大家找一個網絡好的環境下載,然後可以玩兩把LOL差不多就下載好了。

下載好之後工程就是這樣子的,具體每個文件夾的作用請看圖片。

然後我們在src文件夾下的main.cpp中寫入以下代碼
#include <Arduino.h>

void setup() {
  // put your setup code here, to run once:
  //初始化串口
  Serial.begin(115200);
}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println("My First PIO Project!");
  delay(1000);
}

語法跟Arduino一模一樣,直接複製Arduino的程序過來即可。

怎麼編譯下載呢?

非常簡單,看下圖,VScode最下面有幾個圖標,一個對號的就是編譯的,向右箭頭的就是下載的,最右邊有個小插頭那個就是輸出監視器的,我們可以用它來查看串口的輸出數據。

速度真的是太快了,相比Arduino IDE下編譯下載,這裡有了開火箭的感覺。

剛下載進去,發現串口輸出的數據不對,我們啟動串口監視器的時候,默認是9600波特率的,所以我們需要在配置文件platformio.ini添加一行配置信息monitor_baud = 115200,就可以正常輸出了。

怎麼樣,除了下載耗點時間,其它都非常簡單,今天我們只是把程序跑起來,這裡ESP32標準的Arduino庫都有了,簡單的開發是夠了,後面我們再介紹第三方庫的安裝。

相關焦點

  • ESP32S2 與 ESP32 開發方式對比,帶你入門環境搭建
    /DAC 接口,支持觸摸傳感器、溫度傳感器、脈衝計數器;集成 Wi-Fi MAC/ BB/RF/PA/LNA;支持安卓、IOS 的 Smart Config(APP)/AirKiss(微信) 一鍵配網;支持二次開發,集成了 Windows、Linux 開發環境ESP8266 / ESP32 和 ESP32S2的差別一覽表
  • VsCode設置ESP32工具鏈+刨根問底點燈
    unplash今天教大家ESP32在vscode上面的配置,以及點燈時的具體引腳定義.已下軟體都是要提前準備的,還有Python環境,不低於3.6esp32/get-started/index.html
  • 【玩轉ESP32】7、ESP32連接wifi
    ()用於創建一個事件標誌組,返回值是事件標誌組句柄,屬於frerertos裡面的東西;esp_netif_init()用於初始化tcpip協議棧;esp_event_loop_create_default()創建一個默認系統事件調度循環,之後可以註冊回調函數來處理系統的一些事件;esp_netif_create_default_wifi_sta()創建wifi
  • VScode下安裝platformIO-IDE
    偶然的機會,接觸到platformIO,網上介紹PlatformIO 是開源的物聯網開發生態系統。
  • 國內linux和macos搭建esp32的開發環境
    中進行Arduino或者idf方式開發,platformIO封裝不錯使用官方idf在linux、macos、windows開發最近想了解一下官方SDK的開發方式,在搭建esp32的環境中遇到許多問題。該搭建方案和官方文檔配合查看,部分細節該文檔未列出樂鑫官方文檔GitHub個人網站:國際個人網站:中國第一步:基礎工具安裝在linux或者macos中搭建esp32的環境,先要安裝一些基礎工具,如python等等。macos可以使用Homebrew、macports安裝相關的工具以及依賴。
  • ESP32-IDF環境搭建
    現在ESP32的生態可謂相當成熟,樂鑫ESP-IDF的教程遍天是,數款模組和開發板任君選擇,Arduino、PlatformIO、NodeMCU 都對ESP32提供了支持。比較有意思的是:前不久樂鑫發布了ESP32-S3-BOX AI語音開發套件,為用戶提供了一個以離線和在線語音助手為核心的智能設備開發平臺,其付出尤為可嘉。
  • SAST Weekly | vscode 插件PlatformIO簡介
    ArduinoIDE、stm32CubeIDE、Keil三兄弟在電腦桌面上安下了家。    但是,在隨著電設開發的進行,代碼量指數上升,這些我們熟知的IDE的問題也愈加明顯。我們習慣了vscode舒適的編程環境,面對蒼白的界面不禁感慨人世的艱辛。誒,代碼補全功能沒有嗎?誒,我的代碼高亮去哪了?    誒,我的頭髮呢?
  • 【玩轉ESP32】14、esp32 mqtt client
    收錄於話題 #玩轉組件支持MQTT over TCP、SSL with mbedtls、MQTT over Websocket、 MQTT over Websocket Secure;支持訂閱、發布、身份驗證、遺囑消息、心跳、以及3個消息等級。
  • 使用ESP32來學習Python之開發環境搭建
    Python是近來比較火的一種語言,對嵌入式人員來說,通過ESP32來學習Python是一種比較便捷、靠譜的方法。
  • 用Arduino玩轉掌控板(ESP32):ESP32概述與Arduino軟體準備
    實際上,這些知識都是可以遷移的,因此在有時間的情況下,我準備給大家分享一系列用 Arduino 代碼對掌控板(ESP32)編程的教程:用 Arduino 玩轉掌控板(ESP32)系列,旨在更多地從 ESP32 晶片的角度出發,學習 ESP32 模塊的編程,然後應用到掌控板或其他基於 ESP32 的開發板上,讓大家可以觸類旁通。
  • 使用VSCode快速搭建NodeJS開發環境
    NodeJS的開發環境,NodeJS的常見的開發方式有2種,一種是編輯器,一種是IDE。編輯器推薦使用微軟出品的vscdoe,因為其啟動速度快,輕量級,執行簡單,調試方便,還有界面漂亮。而IDE 無可厚非的就是WebStorm了。這裡使用vscdoe搭建開發環境,因為IDE真的比較耗內存。除非開發大型項目,否則輕易我不開IDE。
  • Open Source Hardware、Arduino 與 Platformio之碎碎念
    Arduino for esp8266伴隨著esp8266的發展逐漸進入傳統嵌入式開發應用領域,arduino for esp32在樂鑫的支持下迅速推出了穩定版,使嵌入式開發的先行者擺脫了傳統嵌入式開發的種種約束,mbed,ST等CPU廠家的融入又推動了Arduino的發展,同時各種外設廠家不斷拓展了arduino的生態,arduino已成為OSH的主流平臺。
  • Windows下搭建ESP-IDF開發環境,適合ESP32/S2/C3/S3系列模組二次開發
    查詢當前默認使用python版本,可用python-V查詢,如果不是python3版本請先切換到python3。注意,在安裝時先勾選 Add Python 3.7 to PATH,或手動添加環境變量。下載SDK:git clone https://gitee.com/EspressifSystems/esp-idf.git -b release/v4.34.使用 esp-gitee-tools 拉取子模塊cd esp-gitee-toolsexport
  • Anaconda+VSCode搭建python開發環境
    Anaconda 配合VSCode 搭建一個適用與機器學習,AI,數據科學領域學習與開發的Python開發環境。Anaconda包括Conda、Python以及一大堆安裝好的工具包,比如:numpy、pandas等。VScode集成git和debug功能,小巧但功能十分強大。
  • ESP32平臺開發LVGL圖形界面
    ,LVGL相關的源碼和例程,是以組件的形式提供的,因此,LVGL的源碼保存在lv_port_esp32/components文件夾裡面,並且LVGL相關的源碼和例程,是使用git submodule的方式進行管理的,因此,我們需要更新submodule。
  • Arch下ESP8266開發環境搭建篇
    Espressif ESP8266EX的硬體來設置用於開發應用程式的軟體環境。通過一個簡單的示例,我們想說明如何使用ESP8266_RTOS_SDK(ESP-IDF風格),包括基於菜單的配置,編譯ESP8266_RTOS_SDK以及將固件下載到ESP8266EX板上。ESP8266EX微控制器集成了Tensilica L106 32位RISC處理器,可實現極低的功耗並達到160 MHz的最大時鐘速度。
  • 如何安裝及設定ESP32的開發環境
    如果你已決定採用ESP32並已入手,那就接下來當然就是要來安裝和設定ESP32的開發環境了,本文將帶你搞定這些動作。ESP32 Arduino IDE開發核心安裝若還沒安裝Arduino IDE,必須先至原廠網站下載並安裝,請依照以下步驟完成安裝。1.
  • 另類的Arduino&ESP32開發環境搭建(一)
    另類的Arduino&ESP32開發環境搭建(一)Arduino IDE下的ESP32
  • 嘗試在Win10系統搭建esp32編譯系統.下
    要將舊版本的預編譯環境中的數據移動到新版本:把舊的 MSYS2 環境(即 C:\msys32)移動/重命名為不同的目錄(即 C:\msys32_old)。按照前文所述步驟下載新的預編譯環境。將新的 MSYS2 環境解壓縮到 C:\msys32 (或其他位置)。找到舊的 C:\msys32_old\home 目錄並把它移到 C:\msys32。
  • ESP-NOW無線通信 | ESP32學習之旅-Arduino版
    在學習 Arduino 開發的過程中,無線通訊是我們學習道路上一道必過的坎,無線通訊擺脫了線材的束縛,使用更加靈活且通訊距離根據不同無線模塊可達幾十米甚至是數公裡。常見的無線通訊方式有藍牙、WiFi、LoRa、NB-IoT 等,本教程將重點介紹樂鑫科技開發的另一種無線通訊協議:ESP-NOW,通過本教程的學習,你將了解到如何將 ESP-NOW 技術應用到我們的 DIY 項目中。硬體準備開發環境我們使用 Arduino 軟體來編寫本項目的程序。