请问一下STM32回调函数和普通函数区别

2019-07-14 15:41发布

使用的是STM32L0系列,发现HAL_UART_RxCpltCallback这类中断中的回调函数和普通函数没什么区别呢,回调函数定义是将函数指针作为别的函数的参数被调用,但是感觉HAL_UART_RxCpltCallback并没有作为其它函数的指针呢?它是个弱定义函数,可以被用户的代码覆盖,这个能理解,回调函数就理解不了。
有谁理解吗,能给解释一下吗,谢谢。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答
ggfvxv
1楼-- · 2019-07-16 02:29
各位大神分析得很好
76r456546
2楼-- · 2019-07-16 04:27
 精彩回答 2  元偷偷看……
ZXH22770
3楼-- · 2019-07-16 05:56
回调函数一般由中断发起
uvysdfydad
4楼-- · 2019-07-16 06:12
回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。
杀狼000
5楼-- · 2019-07-16 10:48
回调函数在STenwin很常见,几个界面的切换,可以学下界面的显示。
msvdsufsdf
6楼-- · 2019-07-16 13:14
普通函数的调用是直接或者间接由main函数发起的。回调函数由系统发起调用,与main函数无关。

一周热门 更多>