HRTOS Documentation

中断流程(Interrupt Flow)

中断流程描述CPU响应外设或系统事件时的执行路径, 包括现场保存、中断处理、调度触发与现场恢复全过程。

System Interrupt Kernel Core

概述

中断是RTOS响应外部事件的核心机制, 通过异步触发打断当前执行流并进入中断服务程序。

工作原理

当中断发生时,CPU自动保存部分上下文, 进入ISR执行逻辑,处理完成后再恢复任务执行状态。

中断延迟与嵌套深度直接影响系统实时响应能力。

中断触发条件

中断通常由外设事件或系统内部异常触发。

1. 外设数据到达 2. 定时器到期 3. GPIO事件触发 4. 系统异常 5. 软件中断请求
中断机制使CPU无需轮询外设状态,从而提升实时响应效率。

执行路径

中断触发 ↓ CPU保存上下文 ↓ 进入中断服务程序(ISR) ↓ 执行中断处理逻辑 ↓ 清除中断标志 ↓ 检查是否需要调度 ↓ 恢复上下文并返回

中断执行路径决定系统响应速度与任务切换时机。

关键接口 / 结构

os_interrupt_enable() os_interrupt_disable() os_isr_handler() struct interrupt_context { uint32_t pc; uint32_t psr; uint32_t regs[16]; };

中断服务程序(ISR)

ISR负责处理中断事件,并尽可能快速完成关键逻辑, 避免阻塞后续中断响应。

ISR Best Practice: - 保持执行时间短 - 避免阻塞调用 - 只做必要处理 - 延迟复杂任务到调度阶段

运行流程

中断触发 → CPU自动保存上下文 → 进入ISR → 执行业务逻辑 → 清除中断标志 → 恢复上下文 → 返回原任务。

中断嵌套机制

HRTOS支持高优先级中断抢占低优先级中断, 以保证关键事件优先处理。

低优先级 ISR 执行 ↓ 高优先级中断到达 ↓ 进入嵌套 ISR ↓ 返回原中断继续执行

扩展说明

HRTOS支持中断嵌套与中断优先级分层机制, 可在保证实时性的同时避免关键路径阻塞。

性能影响因素

中断延迟主要受以下因素影响:

1. ISR执行时间 2. 中断嵌套层级 3. 上下文保存开销 4. 调度器复杂度 5. CPU架构特性