您好!
我正在尝试在 SYS BIOS 中实现中断处理。 代码如下所示:
void myIsr15 (UArgg arg);
int main (int argc、char* argv[])
{
Error_Block EB;
Error_init (&EB);
Hwi_Params params;
Hwi_Params_init (¶ms);
params.EventID = 110;
params.arg = params.EventID;
params.enableInt = false;
params.maskSeting = Hwi_MaskingOption_self;
Hwi_handle hwi;
hwi = Hwi_create (15、 myIsr15、¶ms、&EB);
if (hwi = NULL)
{
ERROR_CHECK (&EB);
log_print0 (Diags_status、"注册中断时出错。");
}
Hwi_enableInterrupt (15);
BIOS_start();
返回0;
}
我稍后在应用程序中运行:
HW_WR_REG32 (CSL_C66X_COREPAC_REG_BASE_ADDRESS_REGS + 0x2C、0x00004000);
手动触发此特定中断。 我希望看到:
+++ Interrupt 15 occured
作为输出、但中断处理程序永远不会触发。 当用 CSL 手动配置中断时、它会触发、但我们不想混合使用 CSL 和 SYS BIOS。
有什么不知道 SYS BIOS 实现的原因?