有相似的问题,可以参考
//www.icxbk.com/ask/detail/4785.html
HAL庫比較多和複雜,函數互相呼叫,封裝層數多,所以比起舊版標準庫會再大一些
編譯速度因為分成更多檔案(包含ex)
所以會慢很多很正常
但是是趨勢,CuebMX也使用HAL
HAL库里面包含更多的函数,支持更多的功能,所以自然更复杂
你试一下用最新版的MDK和最新版的HAL库,比老版的快50%,ST公司也在不断改进HAL库的
HAL库是硬件中间层,封装层数比较多,所以编译起来比较慢,效率比较低。
标准库是对寄存器操作,相比起来速度快些。
由于官方原因,还是建议使用HAL库。