STD庫(標准外設庫:Standard Peripherals Library)
該庫是對STM32芯片的一個完整的封裝庫,包括所有標准器件外設的驅動器。目前使用最多的ST庫。幾乎全部用C語言實現。缺點是,STD庫是對某一個系列芯片的庫,移植性差。
HAL庫(硬件抽象層:Hardware Abstraction Layer)
HAL庫是ST為STM32最新退出的抽象層嵌入式軟件,可以更好的確保跨STM32產品的最大可移植性。該庫提供了一整套一致的中間件,如RTOS,USB,TCP/IP和圖形等。HAL庫就是用來取代之前的STD庫的,是ST未來主推的庫,ST新出的芯片已經沒有STD庫了,比如F7系列。
LL庫(Low Layer)
該庫是ST新增的庫,與HAL捆綁發布,文檔也是和HAL庫文檔在一起的。LL庫更接近硬件層,對需要發雜上層協議棧的外設不適用,直接操作寄存器。相比於STD庫與HAL庫,LL庫有一個很大的優點是,節省大量的Flash。
