关键问题
如果您的应用程序项目, 您可以观察构建错误
安装一个调用该函数的 alt_irq_register()
ISR。
Nios II EDS 版本 9.1 包括可选的支持 Nios II 处理器上的外部中断控制器 (EIC) 接口。 为支持 EIC 接口,HAL包含一个增强的中断 API。
当您创建 BSP 时,SBT 确定哪个中断 API(s) 系统支持的设备驱动程序。如果全部已注册 BSP 中的驱动程序表明自己支持增强型 API,SBT 实施增强的 API。所有Altera设备驱动程序 在版本 9.1 和更高版本中支持增强的 API。
实施增强型 API 后,传统中断
API(包括 alt_irq_register()
API)不可用。
因此 , 如果应用程序代码包含对传统 API 的调用
函数, 发生链接器错误。
此问题可能会影响调用或推广的应用项目 alt_irq_register()
其他传统中断 API 功能直接而不是取决于
在 BSP 中的驱动程序上进行中断支持。
如果您Nios II应用程序项目的源代码寄存器
使用 alt_irq_register()
或包括 ISR 的 ISR,
您的应用程序可能无法在Nios II EDS 版本中编译
9.1,由于未定义的参考 alt_irq_register()
,
或者更改为 ISR 功能原型。
修改应用程序代码,以使用新的增强型中断 API。要使用增强的 API,您必须修改多个函数调用和所有 ISR 函数原型。
有关支持增强型中断 API 的信息,请参阅Nios II 软件开发人员手册的异常处理章节 ,或 AN 595:矢量化中断控制器使用和应用程序。
如果您希望在硬件设计中使用 EIC,必须升级到增强的 API,以加快中断响应时间。增强的 API 还可与 Nios II 处理器的内部中断控制器配合使用。