【【萌新的STM32学习-26---HAL库的中断回调机制】】

萌新的STM32学习26—HAL库的中断回调机制

HAL库的回调机制
HAL库外设初始化MSP回调机制
基本的HAL库初始化形式
HAL_(外设名_可能会写上型号)_Init()
例如: HAL_PPP_Init()
这个初始化函数会自动调用MSP回调函数
HAL_PPP_MspInit()

在HAL库中被__weak修饰 说明用户可以自行修改这个函数的名字
其实一般来说这个函数内部是空的啥也没有
相当于HAL给了我们这样的一个接口用

作用: 配置PPP外设用到的硬件,如:GPIO,NVIC,CLOCK等 ,用户可选择是否使用并重新定义该函数

我们异步通信就会使用
HAL_UART_Init()
我们可以调用MSP回调函数
HAL_UART_MspInit()
我们由于可能会有多个同时初始化造成串口的意义不清
我们在自己真正的实现中需要合理的调整先后顺序

对于HAL_PPP_IRQHandler()
这就是中断服务函数
用户在中断服务函数中会调用此函数 这种公用函数意义非凡
调用一系列中断回调函数
HAL_PPP_xxxCallback()
这一函数一般来说会在HAL库中被__weak修饰
作用: 根据回调函数的类型,编写对应的中断处理程序,用户可选择是否使用并重新定义该函数

中断回调

猜你喜欢

转载自blog.csdn.net/weixin_50965981/article/details/132625204