STM32 库函数与标准库函数编程差异

文章目录

  • HAL库函数
    • HAL 库简介
    • HAL 库串口通信例程
  • 标准库函数
    • 标准库简介
    • 标准库串口通信例程
  • HAL 库和标准库实例比较
    • HAL 库与标准库代码不同之处

HAL库函数

HAL 库简介

  • HAL是Hardware Abstraction Layer的缩写,中文名称是:,HAL库工程一般使用Cube软件来生成工程。
  • HAL库是ST公司为STM32的MCU最新推出的抽象层嵌入式软件,更方便的实现跨STM32产品的,通用性很强,ST最终的目的是要实现在STM32系列MCU之间无缝移植,甚至在其他MCU也能实现快速移植。
  • HAL库推出的同时,也加入了很多第三方的中间件,有RTOS,USB,TCP / IP和图形等等。目前,HAL库已经支持STM32全线产品。

HAL 库串口通信例程

标准库函数

标准库简介

  • 标准外设库(Standard Peripherals Library)是对STM32芯片的一个,包括所有标准器件外设的器件驱动器。这应该是目前使用最多的ST库,几乎全部使用C语言实现。
  • 标准库都是基于寄存器的操作。寄存器版本使用较麻烦,每个设置都要去查看芯片引脚。
  • 每次修改MCU功能,都需要手动去修改功能,而且自己修改也不能保证正确性,标准外设库也是针对某一系列芯片而言的,。

标准库串口通信例程

HAL 库和标准库实例比较

以上例程均来自正点原子官方例程——串口实验(HAL库和标准库)

HAL 库与标准库代码不同之处

  • 在HAL库中,只需要调用函数,就可以循环得到串口输出的值;
  • 而在标准库中,需要再嵌套一个循环,才能循环获得串口输出的值。

以上只是在主函数中的不同之处,其实分别去看HAL库和函数库里面的函数,可以发现是完全不相同的。

参考:
stm32中库函数和hal库的区别

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年1月18日
下一篇 2022年1月18日

相关推荐