IoT 節點用的 STMicroelectronics STM32L4 探索套件入門 - FreeRTOS

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

IoT 節點用的 STMicroelectronics STM32L4 探索套件入門

重要

此參考集成託管在亞馬遜的 FreeRTOS 存儲庫上,該存儲庫已被棄用。我們建議您在建立新專案時從這裡開始。如果您已經有一個現有的 FreeRTOS 專案以目前已取代的亞馬遜免費伺服器儲存庫為基礎,請參閱. 亞馬遜自由 Github 存儲庫遷移指南

本教學課程提供 STMicroelectronics STM32L4 Discovery Kit IoT Node 的入門指示。如果您尚未擁有意法半導體 STM32L4 探索套件 IoT 節點,請造訪 AWS 合作夥伴裝置目錄,向我們的合作夥伴購買。

確定已安裝最新的 Wi-Fi 韌體。若要下載最新的 Wi-Fi 韌體,請參閱 STM32L4 Discovery kit IoT node, low-power wireless, Bluetooth Low Energy, NFC, SubGHz, Wi-Fi。在 Binary Resources (二進位資源) 中,選擇 Inventek ISM 43362 Wi-Fi module firmware update (read the readme file for instructions) (Inventek ISM 43362 Wi-Fi 模組韌體更新 (讀取讀我檔中的說明))

在開始之前 AWS IoT,您必須配置 FreeRTOS 下載和 Wi-Fi 以將設備連接到雲端 AWS 。如需說明,請參閱 首要步驟。在此教學課程中,FreeRTOS 下載目錄的路徑稱為。freertos

概觀

本教學課程包含以下入門步驟的指示:

  1. 在主機機器上安裝軟體以對微控制器主機板的內嵌應用程式進行開發和除錯。

  2. 將 FreeRTOS 示範應用程式交叉編譯為二進位映像檔。

  3. 將應用程式二進位映像載入主機板,然後執行應用程式。

設定開發環境

安裝 System Workbench for STM32

  1. 瀏覽至 OpenSTM32.org

  2. 在 OpenSTM32 網頁上註冊。您需要登入以下載 System Workbench。

  3. 瀏覽至 System Workbench for STM32 安裝程式,以下載並安裝 System Workbench。

如果您在安裝時遇到問題,請參閱 System Workbench 網站的常見問答集。

建置並執行 FreeRTOS 示範專案

將 FreeRTOS 示範匯入 STM32 系統工作台

  1. 開啟 STM32 System Workbench,然後輸入新工作空間的名稱。

  2. File (檔案) 功能表中,選擇 Import (匯入)。展開 General (一般),選擇 Existing Projects into Workspace (現有專案到工作空間),然後選擇 Next (下一步)

  3. Select Root Directory (選取根目錄) 中,輸入 projects/st/stm32l475_discovery/ac6/aws_demos

  4. 預設應選取 aws_demos 專案。

  5. 選擇 Finish (完成) 以將專案匯入 STM32 System Workbench。

  6. Project (專案) 功能表中,選擇 Build All (全部建置)。確認專案編譯時未發生錯誤。

監控雲端的 MQTT 訊息

在執行 FreeRTOS 示範專案之前,您可以在主控台中設定 MQTT 用戶端,以監 AWS IoT 控裝置傳送至雲端的訊息。 AWS

若要向 MQTT 用戶端訂閱 MQTT 主題 AWS IoT
  1. 登入 AWS IoT 主控台

  2. 在導覽窗格中,選擇 [測試],然後選擇 [MQTT 測試用戶端] 以開啟 MQTT 用戶端。

  3. 訂閱主題中輸入 your-thing-name/example/topic,然後選擇訂閱主題

當演示項目成功運行在您的設備上,你會看到「你好世界!」 多次發送到您訂閱的主題。

執行 FreeRTOS 示範專案

  1. 使用 USB 纜線將 IoT 節點用的 STMicroelectronics STM32L4 探索套件接到您的電腦。(請參閱主機板隨附的製造商說明文件,找出要使用的正確 USB 連接埠。)

  2. Project Explorer (專案瀏覽器) 中,以滑鼠右鍵按一下 aws_demos,選擇 Debug As (除錯工具),然後選擇 Ac6 STM32 C/C++ Application (Ac6 STM32 C/C++ 應用程式)

    如果第一次除錯工作階段啟動時發生除錯錯誤,請依循下列步驟進行操作:

    1. 在 STM32 System Workbench 的 Run (執行) 功能表中,選擇 Debug Configurations (組態除錯)

    2. 選擇 aws_demos Debug (aws_demos 除錯)。(您可能需要展開 Ac6 STM32 Debugging (Ac6 STM32 除錯)。)

    3. 選擇 Debugger (除錯器) 標籤。

    4. Configuration Script (組態指令碼) 中,選擇 Show Generator Options (顯示產生器選項)

    5. Mode Setup (模式設定) 中,將 Reset Mode (重設模式) 設為 Software System Reset (軟體系統重設)。選擇 Apply (套用),然後選擇 Debug (偵錯)。

  3. 當除錯器停在 main() 中斷點時,請從 Run (執行) 功能表,選擇 Resume (繼續)

搭配 FreeRTOS 體使用 CMake

如果您不想使用 IDE 進行 FreeRTOS 開發,也可以使用 CMake 來構建和運行使用第三方代碼編輯器和調試工具開發的演示應用程序或應用程序。

首先,建立資料夾以包含產生的建置檔案 (build-folder)。

使用下列命令來產生建置檔案:

cmake -DVENDOR=st -DBOARD=stm32l475_discovery -DCOMPILER=arm-gcc -S freertos -B build-folder

即使 arm-none-eabi-gcc 不在您的 shell 路徑中,您也需要設定 AFR_TOOLCHAIN_PATH CMake 變數。例如:

-D AFR_TOOLCHAIN_PATH=/home/user/opt/gcc-arm-none-eabi/bin

如需將 CMake 與 FreeRTOS 搭配使用的詳細資訊,請參閱。搭配使用 FreeRTOS 體

故障診斷

如果示範應用程式的 UART 輸出中顯示以下項目,則需要更新 Wi-Fi 模組的韌體:

[Tmr Svc] WiFi firmware version is: xxxxxxxxxxxxx [Tmr Svc] [WARN] WiFi firmware needs to be updated.

若要下載最新的 Wi-Fi 韌體,請參閱 STM32L4 Discovery kit IoT node, low-power wireless, Bluetooth Low Energy, NFC, SubGHz, Wi-Fi。在 Binary Resources (二進位資源) 中,選擇 Inventek ISM 43362 Wi-Fi module firmware update (Inventek ISM 43362 Wi-Fi 模組韌體更新) 的下載連結。

如需 FreeRTOS 入門的一般疑難排解資訊,請參閱。故障診斷入門