回覆列表
  • 1 # 科學史話

    ST為開發者提供了非常方便的開發庫。到目前為止,有標準外設庫(STD庫)、HAL庫、LL庫 三種。

    其中標準庫與HAL庫最常用,LL庫只是最近新新增的。

    標準外設庫(Standard Peripherals Library)是對STM32晶片的一個完整的封裝,包括所有標準器件外設的器件驅動器。這應該是目前使用最多的ST庫,幾乎全部使用C語言實現。但是,標準外設庫也是針對某一系列晶片而言的,沒有可移植性。

    HAL庫與新增的LL庫,都是ST公司提供的新標準庫,包含在ST為新的標準庫註冊了一個新商標:STMCube™當中。LL庫和HAL庫兩者相互獨立,只不過LL庫更底層。而且,部分HAL庫會呼叫LL庫(例如:USB驅動)。同樣,LL庫也會呼叫HAL庫。

    可以說HAL庫就是用來取代之前的標準外設庫的。相比標準外設庫,STM32Cube HAL庫表現出更高的抽象整合水平,HAL API集中關注各外設的公共函式功能,這樣便於定義一套通用的使用者友好的API函式介面,從而可以輕鬆實現從一個STM32產品移植到另一個不同的STM32系列產品。HAL庫是ST未來主推的庫,從前年開始ST新出的晶片已經沒有STD庫了,比如F7系列。現在,ST主推HAL庫,目前,HAL庫已經支援STM32全線產品。

    比較:

    新晶片現在只推出HAL庫,HAL庫與標準庫比較,所用的API函式不一樣,兩者也相互獨立,優勢在於可以用cubeMX生成程式碼。(ST專門為其開發了配套的桌面軟體STMCubeMX,開發者可以直接使用該軟體進行視覺化配置,大大節省開發時間。)

  • 中秋節和大豐收的關聯?
  • 人工降雪和人工增雪的區別?