如何将回调和中断服务函数进行结合?

Posted Engineer-Bruce_Yang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将回调和中断服务函数进行结合?相关的知识,希望对你有一定的参考价值。

击上方“嵌入式应用研究院”,选择“置顶/星标公众号

干货福利,第一时间送达!

    使用回调的方法可用于轻松创建灵活且可扩展的中断服务程序。开发人员可以使用多种方法以这种方式使用回调。 可以是以动态的形式分配回调,也可以以静态的形式分配回调,静态分配的回调的好处是不能在运行时进行更改,但动态分配对于在执行期间可能需要更改中断行为的应用程序非常有用。

    假设我们有一个 UART 或 USART,可以在多个应用程序中重复使用。我们为它们设计一个硬件抽象层,这样的话我们可以将驱动程序代码与应用程序代码解耦,如下所示:

void Uart_Hal_Init(UartConfig_t const * const Config);
void Uart_Hal_BaudRateSet(UartChannel_t const Channel, UartConfig_t const * const Config);
uint8_t Uart_Hal_CharGet(UartChannel_t const Channel);
void Uart_Hal_CharPut(UartChannel_t const Channel, char const Ch);
uint8_t Uart_Hal_IsDataPr

以上是关于如何将回调和中断服务函数进行结合?的主要内容,如果未能解决你的问题,请参考以下文章

hal库中中断服务函数和回调函数是啥意思,他们的的关系是啥呢?

STM32Cubemx——外部中断

STM32 中定时器中断回调函数中加入adc采样轮换查询后,中断函数不执行?请问怎么解决?

STM32 HAL库的定时器中断回调函数跟串口中断回调函数

思考5 定时器和callback回调函数

结合中断上下文切换和进程上下文切换分析Linux内核的一般执行过程