STM32CubeU5 示例
示例根據(jù)其適用的 STM32Cube 級別進行分類。各個類別的命名如下:
- 示例
這些示例只使用 HAL 和 BSP 驅(qū)動程序(不使用中間件)。其目的是演示產(chǎn)品或外設的特性和使用方式。這些示例按外設進行管理(每個外設(如 TIM)一個文件夾)。從給定外設的基礎應用(如使用定時器生成PWM)到多個外設的集成(如使用 DAC 從 TIM6 和 DMA 同步生成信號),各類情況的復雜程度不一。板件資源的使用量嚴格地控制在最低水平。
- Examples_LL
這些示例只使用 LL 驅(qū)動程序(不使用 HAL 驅(qū)動程序和中間件組件)。它們提供了外設特性和配置流程的典型用例的最佳實現(xiàn)。示例按外設進行管理(每個外設(如 TIM)一個文件夾),主要部署在 Nucleo 板上。
- Examples_MIX
這些示例只使用 HAL、BSP 和 LL 驅(qū)動程序(不使用中間件組件)。它們旨在演示如何在同一應用中使用HAL 和 LL API,以便結(jié)合兩種 API 的優(yōu)勢:
– HAL 提供面向高級功能的 API,具有高度可移植性,這是通過對最終用戶隱藏產(chǎn)品/IP 復雜性來實現(xiàn)的。
– LL 提供寄存器層面的底層 API,獲得更好的優(yōu)化效果。
示例按外設進行管理(每個外設(如 TIM)一個文件夾),只部署在 Nucleo 板上。
- 應用
應用演示產(chǎn)品性能和可用中間件棧的使用方式。應用按中間件(每個中間件(如 Azure? RTOS ThreadX)一個文件夾)或需要高級固件模塊(如 LPBAM)的產(chǎn)品特性進行管理。此外,還支持使用多個中間件棧的應用的集成。
- 演示
演示旨在集成和運行最大數(shù)量的外設和中間件棧,以便展示產(chǎn)品特性和性能。
- 模板項目
提供的模板項目幫助用戶在給定板件上使用 HAL 和 BSP 驅(qū)動程序快速構(gòu)建固件應用。
- Template_LL 項目
提供的模板 LL 項目幫助用戶在給定板件上使用 LL 驅(qū)動程序快速構(gòu)建固件應用。示例位于 STM32Cube_FW_U5_VX.Y.ZProjects目錄下。
這些示例具有相同結(jié)構(gòu),默認產(chǎn)品的配置禁用 Arm? TrustZone?
- *Inc 文件夾,包含所有頭文件
- 包含源代碼的*Src 文件夾
- *EWARM、*MDK-ARM 和*STM32CubeIDE 文件夾包含每個工具鏈的預配置項目
- *README.md 和*readme.html 文件,描述了示例行為和運行示例所需的環(huán)境
啟用了 Arm? TrustZone?的示例帶有后綴“_TrustZone”(TFM 應用除外)并具有相同結(jié)構(gòu):
- *SecureInc 文件夾,包含所有安全項目頭文件
- *SecureSrc 和*Secure_nsclib文件夾,包含所有安全項目源代碼
- *NonSecureInc 文件夾,包含所有非安全項目頭文件
- *NonSecureSrc 文件夾,包含所有非安全項目源代碼
- *EWARM、*MDK-ARM 和*STM32CubeIDE 文件夾包含每個工具鏈的預配置項目
- *README.md 和*readme.html 文件,描述了示例行為和運行示例所需的環(huán)境
為了運行示例,執(zhí)行如下操作:
- 使用首選工具鏈打開示例。
- 重新編譯所有文件,并將二進制文件加載到目標內(nèi)存中。
- 按照*README.md 和*readme.html 文件中的指示運行示例。