我听说过FreeRTOS中的延迟中断,但根据我的理解,ISR为了完成必要的工作而切换的任务在任务/进程上下文中运行。是否存在类似于tasklets或softirq的方案,其中延迟工作在中断上下文而不是进程上下文中运行?
答案 0 :(得分:0)
自由RTOS中的ISR例程和延迟中断处理程序任务与linux中的上半部分和下半部分(Tasklets)类似。 当ISR需要执行冗长的操作时,它们通常用于处理频繁的中断请求。 在freeRTOS中,要将函数的处理推迟到RTOS守护程序任务,请使用vPendableFunction或xTimerPendFunctionCallFromISR()。这类似于在linux中实现下半部分(Tasklets)。有关详情,请点击here