本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Espressif ESP32-WROOM-32SE 入門
重要
此參考整合託管在已取代的 Amazon-FreeRTOS 儲存庫上。我們建議您在建立新專案時從這裡開始。如果您已經擁有以現在已棄用之 Amazon-FreeRTOS 儲存庫為基礎的現有免費RTOS專案,請參閱 Amazon-FreeRTOS Github 儲存庫遷移指南。
注意
-
若要探索如何在您自己的 Espressif IDF專案中整合免費RTOS模組化程式庫和示範,請參閱 ESP32-C3 平台的精選參考整合
。 -
目前 ESP32-WROOM-32SE 的 免費RTOS連接埠不支援對稱多處理 (SMP) 功能。
本教學課程說明如何開始使用 Espressif ESP32-WROOM-32SE 。若要從合作夥伴 AWS 裝置目錄中的合作夥伴購買,請參閱 ESP32-WROOM-32SE
概觀
本教學課程將指引您完成下列步驟:
-
將主機板連線到主機機器。
-
在主機機器上安裝軟體,以開發和偵錯微控制器面板的內嵌應用程式。
-
將 免費RTOS示範應用程式交叉編譯至二進位映像。
-
將應用程式二進位映像載入主機板,然後執行應用程式。
-
使用序列連線來監控執行中的應用程式並進行偵錯。
必要條件
在 Espressif 討論板上開始使用 FreeRTOS 之前,您必須設定 AWS 您的帳戶和許可。
註冊 AWS 帳戶
如果您沒有 AWS 帳戶,請完成下列步驟以建立 。
若要註冊 AWS 帳戶
開啟https://portal.aws.amazon.com/billing/註冊
。 請遵循線上指示進行。
部分註冊程序需接收來電,並在電話鍵盤輸入驗證碼。
當您註冊 時 AWS 帳戶,AWS 帳戶根使用者會建立 。根使用者有權存取該帳戶中的所有 AWS 服務 和資源。作為安全最佳實務,請將管理存取權指派給使用者,並且僅使用根使用者來執行需要根使用者存取權的任務。
AWS 會在註冊程序完成後傳送確認電子郵件給您。您可以隨時前往 https://aws.amazon.com/
建立具有管理存取權的使用者
註冊 後 AWS 帳戶,請保護您的 AWS 帳戶根使用者、啟用 AWS IAM Identity Center並建立管理使用者,這樣您就不會將根使用者用於日常任務。
保護您的 AWS 帳戶根使用者
-
選擇根使用者並輸入 AWS 帳戶 您的電子郵件地址,以帳戶擁有者AWS Management Console
身分登入 。在下一頁中,輸入您的密碼。 如需使用根使用者登入的說明,請參閱 AWS 登入 使用者指南中的以根使用者身分登入。
-
為您的根使用者開啟多重要素驗證 (MFA)。
如需指示,請參閱 IAM 使用者指南 中的為 AWS 帳戶 根使用者 (主控台) 啟用虛擬MFA裝置。
建立具有管理存取權的使用者
-
啟用IAM身分中心。
如需指示,請參閱 AWS IAM Identity Center 使用者指南中的啟用 AWS IAM Identity Center。
-
在 IAM Identity Center 中,將管理存取權授予使用者。
如需使用 IAM Identity Center 目錄 作為身分來源的教學課程,請參閱 AWS IAM Identity Center 使用者指南 中的使用 設定使用者存取權 IAM Identity Center 目錄。
以具有管理存取權的使用者身分登入
-
若要使用 IAM Identity Center 使用者登入,請使用您建立 IAM Identity Center 使用者時URL傳送到您電子郵件地址的登入。
如需使用 IAM Identity Center 使用者登入的協助,請參閱 AWS 登入 使用者指南 中的登入 AWS 存取入口網站。
指派存取權給其他使用者
若要提供存取權,請新增權限至您的使用者、群組或角色:
-
中的使用者和群組 AWS IAM Identity Center:
建立權限合集。請按照 AWS IAM Identity Center 使用者指南 中的 建立權限合集 說明進行操作。
-
IAM 透過身分提供者在 中管理的使用者:
建立聯合身分的角色。請遵循 IAM 使用者指南 中為第三方身分提供者 (聯合) 建立角色的指示。
-
IAM 使用者:
-
建立您的使用者可擔任的角色。請遵循 IAM 使用者指南 中為IAM使用者建立角色的指示。
-
(不建議) 將政策直接附加至使用者,或將使用者新增至使用者群組。請遵循 IAM 使用者指南 中將許可新增至使用者 (主控台) 的指示。
-
開始使用
注意
本教學課程中的 Linux 命令要求您使用 Bash Shell。
-
設定 Espressif 硬體。
如需設定 ESP32-WROOM-32SE 開發板硬體的相關資訊,請參閱 ESP32-DevKitC V4 入門指南
。 重要
當您到達本指南的安裝步驟區段時,請遵循 直到完成步驟 4 (設定環境變數)。完成步驟 4 後停止 ,並遵循此處的其餘步驟。
-
設定您的開發環境 。
若要與討論板通訊,您必須安裝工具鏈。Espressif 提供 ESP-IDF 來為其界面卡開發軟體。由於 ESP-IDF 已將自己的 FreeRTOS Kernel 版本整合為元件,Amazon FreeRTOS 包含自訂版本的 ESP-IDF v4.2,已移除 FreeRTOS Kernel。這可以修正編譯時重複檔案的問題。若要使用 Amazon Free 隨附的自訂 ESP-IDF v4.2 版本RTOS,請依照下列指示操作主機的作業系統。
Windows
-
下載 ESPIDF的 Universal Online Installer
for Windows。 -
執行 Universal Online Installer 。
-
當您前往步驟下載或使用 ESP-IDF 時,請選取使用現有的 ESP目錄IDF,並將選擇現有的 ESPIDF目錄設定為
。freertos
/vendors/espressif/esp-idf -
完成安裝。
macOS
-
請遵循 macOS 的工具鏈先決條件標準設定 (ESP-IDF v4.2)
中的指示。 重要
當您達到後續步驟 下的「取得 ESP-IDF」指示時,請停止,然後返回此頁面的指示。
-
開啟命令列視窗。
-
導覽至 免費RTOS下載目錄,然後執行下列指令碼,為您的平台下載並安裝 espressif 工具鏈。
vendors/espressif/esp-idf/install.sh
-
使用下列命令將 ESP- IDF工具鏈工具新增至終端機的路徑。
source vendors/espressif/esp-idf/export.sh
Linux
-
請遵循 Linux 的工具鏈先決條件標準設定 (ESP-IDF v4.2)
中的指示。 重要
當您達到後續步驟 下的「取得 ESP-IDF」指示時,請停止,然後返回此頁面的指示。
-
開啟命令列視窗。
-
導覽至 免費RTOS下載目錄,然後執行下列指令碼,為您的平台下載並安裝 Espressif 工具鏈。
vendors/espressif/esp-idf/install.sh
-
使用下列命令將 ESP- IDF工具鏈工具新增至終端機的路徑。
source vendors/espressif/esp-idf/export.sh
-
-
建立序列連線。
-
若要在主機機器與 ESP32-WROOM-32SE 之間建立序列連線,請將 CP210x 安裝USB至 UART Bridge VCP驅動程式。您可以從 Silicon Labs
下載這些驅動程式。 -
請依照步驟使用 建立序列連線ESP32
。 -
在您建立序連接之後,請記下開發板連接的序列連接埠。您需要它來閃爍示範。
-
設定 免費RTOS示範應用程式
在此教學課程中,免費RTOS組態檔案位於
。(例如,如果選擇 freertos
/vendors/espressif/boards/board-name
/aws_demos/config_files/FreeRTOSConfig.hAFR_BOARD espressif.esp32_devkitc
,則組態檔案位於
。) freertos
/vendors/espressif/boards/esp32/aws_demos/config_files/FreeRTOSConfig.h
重要
ATECC608A 裝置具有一次性初始化,在專案第一次執行時 (呼叫 期間) 鎖定在裝置上C_InitToken
。不過,免費RTOS示範專案和測試專案具有不同的組態。如果裝置在示範專案組態期間鎖定,並非測試專案中的所有測試都會成功。
-
按照中的步驟設定 免費RTOS示範專案設定免費RTOS示範。當您進入最後一個步驟時,若要格式化您的 AWS IoT 憑證 ,請停止並執行下列步驟。
-
Microchip 已提供數種指令碼工具,以協助設定 ATECC608A 組件。導覽至
目錄並開啟freertos
/vendors/microchip/example_trust_chain_toolREADME.md
檔案。 -
若要佈建您的裝置,請遵循
README.md
檔案中的指示。這些步驟如下:-
使用 建立並註冊憑證授權機構 AWS。
-
在 ATECC608A 上產生金鑰,並匯出公有金鑰和裝置序號。
-
為裝置產生憑證,並向 註冊該憑證 AWS。
-
-
按照開發人員模式金鑰佈建的指示,將憑證授權機構憑證和裝置憑證載入至裝置。
在 AWS Cloud 上監控MQTT訊息
在執行免費RTOS示範專案之前,您可以在 AWS IoT 主控台中設定MQTT用戶端,以監控裝置傳送至 AWS Cloud 的訊息。
使用 AWS IoT MQTT用戶端訂閱MQTT主題
-
登入 AWS IoT 主控台
。 -
在導覽窗格中,選擇測試 ,然後選擇MQTT測試用戶端 。
-
在訂閱主題 中,輸入
,然後選擇訂閱主題 。your-thing-name
/example/topic
使用 idf.py 指令碼建置、快閃和執行 免費RTOS示範專案
您可以使用 Espressif 的IDF公用程式 (idf.py
) 來產生建置檔案、建置應用程式二進位檔,以及將二進位檔快閃到裝置上。
注意
有些設定可能需要搭配 使用連接埠選項 "-p port-name
" idf.py
來指定正確的連接埠,如下列範例所示。
idf.py -p /dev/cu.usbserial-00101301B flash
在 Windows、Linux 和 macOS 上免費RTOS建置和快閃 (ESP-IDF v4.2)
-
導覽至 免費RTOS下載目錄的根目錄。
-
在命令列視窗中,輸入下列命令,將 ESP- IDF工具新增至終端機的 PATH:
- Windows (「命令」應用程式)
-
vendors\espressif\esp-idf\export.bat
- Windows ("ESP-IDF 4.x CMD" 應用程式)
-
(這在您開啟應用程式時已完成。)
- Linux / macOS
-
source vendors/espressif/esp-idf/export.sh
-
在
build
目錄中設定 cmake,並使用下列命令建置韌體映像。idf.py -DVENDOR=espressif -DBOARD=esp32_ecc608a_devkitc -DCOMPILER=xtensa-esp32 build
您應該會看到以下範例的輸出。
Running cmake in directory /path/to/hello_world/build Executing "cmake -G Ninja --warn-uninitialized /path/to/hello_world"... Warn about uninitialized values. -- Found Git: /usr/bin/git (found version "2.17.0") -- Building empty aws_iot component due to configuration -- Component names: ... -- Component paths: ... ... (more lines of build system output) [527/527] Generating hello-world.bin esptool.py v2.3.1 Project build complete. To flash, run this command: ../../../components/esptool_py/esptool/esptool.py -p (PORT) -b 921600 write_flash --flash_mode dio --flash_size detect --flash_freq 40m 0x10000 build/hello-world.bin build 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/partition-table.bin or run 'idf.py -p PORT flash'
如果沒有錯誤,建置會產生韌體二進位 .bin 檔案。
-
使用以下命令清除開發板的快閃記憶體。
idf.py erase_flash
-
使用
idf.py
指令碼將應用程式二進位檔案快閃至您的討論板。idf.py flash
-
使用下列命令來監控您界面卡序列連接埠的輸出。
idf.py monitor
注意
-
您可以組合這些命令,如下列範例所示。
idf.py erase_flash flash monitor
-
對於某些主機設定,您必須在閃爍界面卡時指定連接埠,如下列範例所示。
idf.py erase_flash flash monitor -p /dev/ttyUSB1
-
使用 建置 和 Flash FreeRTOS CMake
除了使用 提供的idf.py
指令碼IDFSDK來建置和執行程式碼之外,您也可以使用 建置專案CMake。目前支援 Unix Makefile 和 Ninja 建置系統。
建置和快閃專案
-
在命令列視窗中,導覽至免費RTOS下載目錄的根目錄。
-
執行下列指令碼,將 ESP- IDF工具新增至 Shell 的 PATH。
- Windows
-
vendors\espressif\esp-idf\export.bat
- Linux / macOS
-
source vendors/espressif/esp-idf/export.sh
-
輸入下列命令以產生建置檔案。
- 使用 Unix Makefiles
-
cmake -DVENDOR=espressif -DBOARD=esp32_plus_ecc608a_devkitc -DCOMPILER=xtensa-esp32 -S . -B ./
YOUR_BUILD_DIRECTORY
-DAFR_ENABLE_ALL_MODULES=1 -DAFR_ENABLE_TESTS=0 - 使用 Ninja
-
cmake -DVENDOR=espressif -DBOARD=esp32_plus_ecc608a_devkitc -DCOMPILER=xtensa-esp32 -S . -B ./
YOUR_BUILD_DIRECTORY
-DAFR_ENABLE_ALL_MODULES=1 -DAFR_ENABLE_TESTS=0 -GNinja
-
清除快閃記憶體,然後快閃記憶體主機板。
- 使用 Unix Makefiles
-
make -C ./
YOUR_BUILD_DIRECTORY
erase_flashmake -C ./
YOUR_BUILD_DIRECTORY
flash - 使用 Ninja
-
ninja -C ./
YOUR_BUILD_DIRECTORY
erase_flashninja -C ./
YOUR_BUILD_DIRECTORY
flash
其他資訊
如需使用 Espressif ESP32界面卡和進行故障診斷的詳細資訊,請參閱下列主題: