11 KiB
Wio Terminal
Seeed Studios 的 Wio Terminal 是一款兼容 Arduino 的微控制器,內建 WiFi 以及一些感測器和執行器,並且可以透過名為 Grove 的硬體生態系統添加更多感測器和執行器。
設置
要使用 Wio Terminal,您需要在電腦上安裝一些免費軟體。此外,在連接 WiFi 之前,您需要更新 Wio Terminal 的韌體。
任務 - 設置
安裝所需的軟體並更新韌體。
-
安裝 Visual Studio Code (VS Code)。這是您將用來編寫 C/C++ 裝置程式碼的編輯器。請參考 VS Code 文件 了解如何安裝 VS Code。
💁 另一個流行的 Arduino 開發 IDE 是 Arduino IDE。如果您已熟悉此工具,則可以使用它代替 VS Code 和 PlatformIO,但課程將基於使用 VS Code 的指導。
-
安裝 VS Code 的 PlatformIO 擴展。這是 VS Code 的一個擴展,支持用 C/C++ 編程微控制器。請參考 PlatformIO 擴展文件 了解如何在 VS Code 中安裝此擴展。此擴展依賴於 Microsoft C/C++ 擴展來處理 C 和 C++ 程式碼,安裝 PlatformIO 時會自動安裝 C/C++ 擴展。
-
將 Wio Terminal 連接到您的電腦。Wio Terminal 底部有一個 USB-C 端口,需要連接到電腦上的 USB 端口。Wio Terminal 附帶 USB-C 至 USB-A 線纜,但如果您的電腦只有 USB-C 端口,則需要 USB-C 線纜或 USB-A 至 USB-C 轉接器。
-
按照 Wio Terminal Wiki WiFi 概述文件 中的指導設置 Wio Terminal 並更新韌體。
Hello World
在開始學習新的程式語言或技術時,通常會創建一個 "Hello World" 應用程式——一個小型應用程式,輸出類似 "Hello World"
的文字,以確認所有工具已正確配置。
Wio Terminal 的 Hello World 應用程式將確保您已正確安裝 Visual Studio Code 並使用 PlatformIO 設置微控制器開發環境。
創建 PlatformIO 專案
第一步是使用 PlatformIO 創建一個新的專案,並配置為 Wio Terminal。
任務 - 創建 PlatformIO 專案
創建 PlatformIO 專案。
-
將 Wio Terminal 連接到您的電腦
-
啟動 VS Code
-
PlatformIO 圖標將顯示在側邊菜單欄:
選擇此菜單項,然後選擇 PIO Home -> Open
-
在歡迎畫面中,選擇 + New Project 按鈕
-
在 Project Wizard 中配置專案:
-
將專案命名為
nightlight
-
在 Board 下拉選單中輸入
WIO
以篩選板子,並選擇 Seeeduino Wio Terminal -
保持 Framework 為 Arduino
-
可以保持 Use default location 勾選,或者取消勾選並選擇專案位置
-
選擇 Finish 按鈕
PlatformIO 將下載所需的組件以編譯 Wio Terminal 的程式碼並創建您的專案。這可能需要幾分鐘。
-
探索 PlatformIO 專案
VS Code 的資源管理器將顯示由 PlatformIO 向導創建的多個檔案和資料夾。
資料夾
.pio
- 此資料夾包含 PlatformIO 所需的臨時數據,例如庫或編譯的程式碼。如果刪除,它會自動重新創建,並且如果您在 GitHub 等網站上分享專案,無需將其添加到源代碼控制中。.vscode
- 此資料夾包含 PlatformIO 和 VS Code 使用的配置。如果刪除,它會自動重新創建,並且如果您在 GitHub 等網站上分享專案,無需將其添加到源代碼控制中。include
- 此資料夾用於添加額外庫時需要的外部標頭檔案。在這些課程中,您不會使用此資料夾。lib
- 此資料夾用於您希望從程式碼中調用的外部庫。在這些課程中,您不會使用此資料夾。src
- 此資料夾包含應用程式的主要源代碼。最初,它將包含一個檔案 -main.cpp
。test
- 此資料夾是您放置程式碼單元測試的地方。
檔案
-
main.cpp
- 此檔案位於src
資料夾中,包含應用程式的入口點。打開此檔案,您將看到以下程式碼:#include <Arduino.h> void setup() { // put your setup code here, to run once: } void loop() { // put your main code here, to run repeatedly: }
當裝置啟動時,Arduino 框架將執行一次
setup
函數,然後重複執行loop
函數,直到裝置關閉。 -
.gitignore
- 此檔案列出了在將程式碼添加到 git 源代碼控制時需要忽略的檔案和資料夾,例如上傳到 GitHub 的存儲庫。 -
platformio.ini
- 此檔案包含裝置和應用程式的配置。打開此檔案,您將看到以下程式碼:[env:seeed_wio_terminal] platform = atmelsam board = seeed_wio_terminal framework = arduino
[env:seeed_wio_terminal]
部分包含 Wio Terminal 的配置。您可以有多個env
部分,以便程式碼可以為多個板子編譯。其他值與專案向導中的配置匹配:
platform = atmelsam
定義 Wio Terminal 使用的硬體(基於 ATSAMD51 的微控制器)board = seeed_wio_terminal
定義微控制器板的類型(Wio Terminal)framework = arduino
定義此專案使用 Arduino 框架。
編寫 Hello World 應用程式
現在您可以開始編寫 Hello World 應用程式。
任務 - 編寫 Hello World 應用程式
編寫 Hello World 應用程式。
-
在 VS Code 中打開
main.cpp
檔案 -
將程式碼更改為以下內容:
#include <Arduino.h> void setup() { Serial.begin(9600); while (!Serial) ; // Wait for Serial to be ready delay(1000); } void loop() { Serial.println("Hello World"); delay(5000); }
setup
函數初始化與串口的連接——在此情況下,是用於連接 Wio Terminal 到電腦的 USB 端口。參數9600
是 波特率(也稱為符號率),即通過串口每秒傳輸的數據速度(以位為單位)。此設置表示每秒傳輸 9,600 位(0 和 1)的數據。然後它等待串口準備好。loop
函數將行Hello World!
發送到串口,因此會發送Hello World!
的字符以及一個換行符。然後它休眠 5,000 毫秒或 5 秒。loop
結束後,會再次執行,並且如此反覆執行,直到微控制器關閉。 -
將 Wio Terminal 設置為上傳模式。每次上傳新程式碼到裝置時,您都需要執行此操作:
-
快速向下拉動電源開關兩次——每次都會彈回到開啟位置。
-
檢查 USB 端口右側的藍色狀態 LED。它應該在閃爍。
點擊上方圖片觀看操作影片。
-
-
編譯並上傳程式碼到 Wio Terminal
-
打開 VS Code 命令面板
-
輸入
PlatformIO Upload
搜索上傳選項,並選擇 PlatformIO: Upload如果需要,PlatformIO 會在上傳之前自動編譯程式碼。
-
程式碼將被編譯並上傳到 Wio Terminal
💁 如果您使用 macOS,可能會出現 DISK NOT EJECTED PROPERLY 的通知。這是因為 Wio Terminal 在閃存過程中會被掛載為磁碟,並在編譯程式碼寫入裝置時斷開連接。您可以忽略此通知。
⚠️ 如果出現上傳端口不可用的錯誤,首先確保 Wio Terminal 已連接到您的電腦,並通過屏幕左側的開關打開,並設置為上傳模式。底部的綠燈應該亮著,藍燈應該在閃爍。如果仍然出現錯誤,請再次快速向下拉動開關兩次,強制 Wio Terminal 進入上傳模式,然後重試上傳。
-
PlatformIO 有一個串口監視器,可以監視通過 USB 線纜從 Wio Terminal 發送的數據。這使您可以監視由 Serial.println("Hello World");
命令發送的數據。
-
打開 VS Code 命令面板
-
輸入
PlatformIO Serial
搜索串口監視器選項,並選擇 PlatformIO: Serial Monitor一個新的終端將打開,通過串口發送的數據將流入此終端:
> Executing task: platformio device monitor < --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time --- More details at http://bit.ly/pio-monitor-filters --- Miniterm on /dev/cu.usbmodem101 9600,8,N,1 --- --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H --- Hello World Hello World
Hello World
每隔 5 秒會打印到串口監視器。
💁 您可以在 code/wio-terminal 資料夾中找到此程式碼。
😀 您的 'Hello World' 程式成功了!
免責聲明:
本文件使用 AI 翻譯服務 Co-op Translator 進行翻譯。雖然我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或錯誤解釋不承擔責任。