2

我想知道在 STM32 的事件处理程序中通过函数指针调用函数是否安全。事件处理程序用于 I2C 并具有最高优先级。可以假设要调用的函数很快(只是一些字节重新排序)。

感谢您的任何提示或评论。

阿恩

4

2 回答 2

2

如果函数指针已初始化,应该可以正常工作。我能想到的唯一问题是中断处理程序的常见问题 - 如果“字节重新排序”涉及从 tx/rx 缓冲区中删除/添加字节,则缓冲区管理必须是安全可中断的。

于 2012-01-03T10:52:56.587 回答
1

是的。

话虽如此,但存在一个潜在风险。您必须确保在激活事件处理程序时初始化函数指针。

通常,全局变量在调用 main 之前初始化,但如果事件处理程序在此之前处于活动状态,您可能会遇到麻烦。

于 2012-01-03T10:30:24.450 回答