主要内容

本页采用了机器翻译。点击此处可查看英文原文。

硬件中断

从中断服务例程触发下游函数调用子系统

自 R2023a 起

  • Hardware Interrupt block

库:
C2000 Microcontroller Blockset / F2838x / M4
C2000 Microcontroller Blockset / F28M35x / M3
C2000 Microcontroller Blockset / F28M36x / M3
C2000 Microcontroller Blockset / Scheduling

描述

使用 Hardware Interrupt 模块在模型生成的代码中自动创建中断服务例程 (ISR)。ISR 执行与该模块的事件端口关联的下游函数调用子系统。

与事件输出端口关联的函数调用子系统以与 ISR 优先级相同的优先级运行。

使用此模块,您可以:

  • 创建 ISR。

  • 设置 ISR 优先级。

  • 启用或禁用中断抢占。

  • 使用 Hardware Mapping 工具配置所需的事件或中断。

硬件映射工具允许您为选定的硬件板配置硬件中断任务。借助此工具,您可以将软件模型中的任务映射到可用的事件源和中断:

端口

输入

全部展开

当连接到 Function-Call Generator 模块时,仅用于仿真的消息输入端口会作为直通模块,其输出会在仿真中通过 name Event 端口发出。

依赖关系

要启用此端口,请选择启用仿真端口参数。

输出

全部展开

该模块的输出是一个函数调用。函数调用输出的数量将与 ISR 中选择处理的事件数量相同。

参数

全部展开

指定要为 Hardware Interrupt 模块服务的事件数量。此参数启用指定数量的事件作为输出端口 event#

此参数中指定的值设置下游函数调用子系统的优先级。所选 (ISR) 的 Simulink 任务优先级是相对于模型基本速率优先级而言的。

注意

默认模型基本采样率优先级设置为 40,优先级值越低表示任务优先级越高。要实现这一点,必须在配置参数 > 求解器窗格中启用优先级值越高,任务优先级越高选项。

默认情况下,优先级更高的中断可以抢占优先级较低的中断。选择此选项可使低优先级中断完成执行,而不会被其他中断抢占。

选择此参数可添加兼容的仿真输入端口。

版本历史记录

在 R2023a 中推出