我使用DE2-115 fpga并使用qsys创建了一个硬件设计。 如果我在主板上运行c代码它工作正常。但是如果我调用alt_ic_isr_register 注册一个isr函数不返回。我使用正确的irq号码 如在qsys中定义并在system.h中生成为常量,我可以跟踪调试器中的失败。该函数调用实习生
static ALT_INLINE void ALT_ALWAYS_INLINE
alt_irq_enable_all (alt_irq_context context)
{
#if (NIOS2_NUM_OF_SHADOW_REG_SETS > 0) || (defined NIOS2_EIC_PRESENT) || \
(defined NIOS2_MMU_PRESENT) || (defined NIOS2_MPU_PRESENT)
alt_irq_context status;
NIOS2_READ_STATUS (status);
status &= ~NIOS2_STATUS_PIE_MSK;
status |= (context & NIOS2_STATUS_PIE_MSK);
NIOS2_WRITE_STATUS (status);
#else
NIOS2_WRITE_STATUS (context);
#endif
}
它跳转到#else分支并调用NIOS2_WRITE_STATUS(context); 永远不会返回,我没有得到任何错误消息或任何东西。 有人有建议,我可以搜索问题或可能是什么问题?