加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入

UM3425 用戶手冊STM32N6 HAL 和底層驅(qū)動程序的說明

12/17 14:22
879
102.04 MB
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
  • 資料介紹
    • 介紹
    • STM32CubeN6 MCU包
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

介紹

STM32Cube是意法半導(dǎo)體(STMicroelectronics)的一項原創(chuàng)計劃,旨在通過減少開發(fā)工作量、時間和成本來顯著提高開發(fā)者的生產(chǎn)力。STM32Cube覆蓋了STM32產(chǎn)品系列。

STM32Cube包括:

? STM32CubeMX,一個圖形化的軟件配置工具,它允許使用圖形向?qū)蒀初始化代碼。

? 一個全面的嵌入式軟件平臺,按系列提供(例如STM32CubeN6用于STM32N6設(shè)備)

– STM32Cube HAL,STM32的抽象層嵌入式軟件,確保了在STM32產(chǎn)品系列中的最大可移植性。HAL API適用于所有外設(shè)。

– 低層API(LL),提供了一個快速、輕量級的專家導(dǎo)向?qū)樱菻AL更接近硬件。LL API僅適用于一組外設(shè)。

– 一系列一致的中間件組件,如USB、H.264視頻編碼器、圖像信號處理庫、Azure? RTOS、OpenBootloader、外部內(nèi)存管理器和加載器。

– 所有嵌入式軟件工具,附帶一套完整的示例。

HAL驅(qū)動層提供了一套簡單、通用的多實例API(應(yīng)用程序編程接口),用于與上層(應(yīng)用程序、庫和協(xié)議棧)交互。HAL驅(qū)動API分為兩類:通用API,為所有STM32系列提供通用和通用功能;擴(kuò)展API,包括特定和定制功能,適用于特定的線路或部件編號。HAL驅(qū)動包括一套完整的現(xiàn)成API,簡化了用戶應(yīng)用程序的實現(xiàn)。例如,通信外設(shè)包含API來初始化和配置外設(shè)、管理輪詢模式下的數(shù)據(jù)傳輸、處理中斷或DMA以及管理通信錯誤。HAL驅(qū)動是面向功能而不是面向外設(shè)的。例如,定時器API被分為幾個類別,如基本定時器、捕獲和脈寬調(diào)制PWM)。HAL驅(qū)動層通過檢查所有函數(shù)的輸入值來實現(xiàn)運(yùn)行時故障檢測。這種動態(tài)檢查增強(qiáng)了固件的健壯性。運(yùn)行時檢測也適用于用戶應(yīng)用程序開發(fā)和調(diào)試。

LL驅(qū)動提供基于STM32外設(shè)可用功能的硬件服務(wù)。這些服務(wù)準(zhǔn)確反映了硬件能力,并提供了必須按照產(chǎn)品線參考手冊中描述的編程模型調(diào)用的原子操作。因此,LL服務(wù)不是基于獨(dú)立進(jìn)程的,不需要任何額外的內(nèi)存資源來保存它們的狀態(tài)、計數(shù)器或數(shù)據(jù)指針。所有操作都是通過改變相關(guān)外設(shè)寄存器的內(nèi)容來執(zhí)行的。與HAL不同,對于那些優(yōu)化訪問不是關(guān)鍵特性,或者需要大量軟件配置和/或復(fù)雜上層協(xié)議棧的外設(shè),不提供LL API。

HAL和LL是互補(bǔ)的,并覆蓋了廣泛的應(yīng)用需求:

? HAL提供了高級和面向功能的API,具有高可移植性。這些API將MCU和外設(shè)的復(fù)雜性隱藏起來,不讓最終用戶看到。

? LL提供了寄存器級別的低級API,具有更好的優(yōu)化但可移植性較差。這些API需要對MCU和外設(shè)規(guī)格有深入的了解。

HAL和LL驅(qū)動的源代碼是用嚴(yán)格的ANSI-C開發(fā)的,使其獨(dú)立于開發(fā)工具。它使用Coverity靜態(tài)分析工具進(jìn)行檢查。它有完整的文檔。

這份用戶手冊的結(jié)構(gòu)如下:

? HAL驅(qū)動程序概述

? 低層驅(qū)動程序概述

? HAL和LL驅(qū)動程序的共存

? 每個外設(shè)驅(qū)動程序的詳細(xì)描述:配置結(jié)構(gòu)、函數(shù)以及如何使用給定的API構(gòu)建您的應(yīng)用程序

STM32CubeN6 MCU包

STM32CubeN6 MCU包運(yùn)行在基于Arm? Cortex?-M處理器的STM32N6 32位微控制器上。

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

相關(guān)資料