乐鑫技术交流
直播中

凌章致

7年用户 961经验值
私信 关注
[问答]

定时器回调函数能不能用ICACHE_FLASH_ATTR定义?

非 OS SDK 在中断处理函数中,请勿使用任何 ICACHE_FLASH_ATTR 定义的函数。
请问:
1、定时器和hw定时器的回调函数是否在中断处理函数里面被调用。定时器回调函数能不能调用 ICACHE_FLASH_ATTR 定义的函数。
2、定时器回调函数能不能用ICACHE_FLASH_ATTR 定义。
3、API中其他回调函数能不能用ICACHE_FLASH_ATTR 定义和调用 ICACHE_FLASH_ATTR 定义的函数。
                                                                                                                                                        

回帖(1)

麻酱

2024-7-22 16:59:09
1. 定时器和hw定时器的回调函数是否在中断处理函数里面被调用。

答:是的,定时器和hw定时器的回调函数通常在中断处理函数中被调用。当定时器或hw定时器达到设定的时间后,它们会触发中断,然后调用相应的回调函数。

2. 定时器回调函数能不能调用 ICACHE_FLASH_ATTR 定义的函数。

答:在非OS SDK中,中断处理函数中不建议使用 ICACHE_FLASH_ATTR 定义的函数。因为ICACHE_FLASH_ATTR 定义的函数可能会影响中断处理的性能和稳定性。但是,如果你确信在特定情况下使用 ICACHE_FLASH_ATTR 定义的函数不会导致问题,你可以尝试使用它们。建议在这种情况下进行充分的测试以确保系统的稳定性。

3. 定时器回调函数能不能用ICACHE_FLASH_ATTR 定义。

答:定时器回调函数可以使用 ICACHE_FLASH_ATTR 定义,但是需要注意,这可能会影响中断处理的性能和稳定性。在非OS SDK中,建议在中断处理函数中避免使用 ICACHE_FLASH_ATTR 定义的函数。

4. API中其他回调函数能不能用ICACHE_FLASH_ATTR 定义和调用 ICACHE_FLASH_ATTR 定义的函数。

答:API中的其他回调函数可以使用 ICACHE_FLASH_ATTR 定义,但是在中断处理函数中调用这些回调函数时,需要注意性能和稳定性问题。如果回调函数在中断处理函数中被调用,建议避免使用 ICACHE_FLASH_ATTR 定义的函数。在其他情况下,可以根据需要使用 ICACHE_FLASH_ATTR 定义的函数,但要确保这不会影响系统的性能和稳定性。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分