前言

主要用于记录 stm32 的知识点以及学习过程,这样慢慢积累下来,会有莫名的成就感

如果有误,欢迎加我 qq 指出错误

使用板子:

stm32f103c8t6 最小系统板

stm32 三种开发方式的区别

  • 寄存器模式:最底层的开发,运行速度最快。实际上也是使用了固件库,但是不是使用固件库的函数,而是使用了固件库的定义,包括宏定义,结构体定义。和 51 的开发差不多,但因为 32 的寄存器太多,实际开发手动配置大量寄存器极其耗费时间,同时在没有注释的情况下可读性差,所以较少使用。
  • 标准库模式:基于寄存器进行了函数的封装,而由于函数封装以及内部大量的检查参数有效性的代码,运行速度相对于寄存器模式较慢。封装之后可以根据函数名字就能明白代码作用,容易记忆,使用方便,所以较多人使用。
  • HAL 库模式:全称是 Hardware Abstraction Layer(抽象印象层),相比于标准库更加深入的封装,有句柄、回调函数等概念,因此相对于标准库模式有更好的可移植性(可在不同芯片的移植),但代价就是更多的性能损失。

本系列采用标准库模式