“线程:HALCOGEN”中讨论的其它部件
R5 MCU 的 ARM 技术手册指出,可以通过写入辅助控制寄存器中的 DZC 位来禁用除零例外掩码。 [4-26]。

如何检查是否正在调用异常/中断? 我使用的是 CCS 9.3.0版的卤化合物。
我已经验证了 DZC 设置为1,并且编译器没有优化零除法。 下面是我用来测试此功能的代码和装配体步进的屏幕截图。
挥发性浮子 x = 0.0;
挥发性浮子测试= 12.2 / x;

This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
R5 MCU 的 ARM 技术手册指出,可以通过写入辅助控制寄存器中的 DZC 位来禁用除零例外掩码。 [4-26]。

如何检查是否正在调用异常/中断? 我使用的是 CCS 9.3.0版的卤化合物。
我已经验证了 DZC 设置为1,并且编译器没有优化零除法。 下面是我用来测试此功能的代码和装配体步进的屏幕截图。
挥发性浮子 x = 0.0;
挥发性浮子测试= 12.2 / x;

您好,泰勒
1. 需要在 C15辅助控制寄存器中设置 DZC 启用,以允许 FPSCC.DZC 状态标志生成中断请求。 Cortex R4/5 TRM 包括从该寄存器读取和写入的组装说明示例:
MRC P15, 0, r0, C15, c0, 0
Orr r0, r0, #0x000200
MCR P15, 0, r0, C15, c0, 0
2.启用映射到 FPU 中断的 VIM 通道47。 在 HalCoGen conf GUI 中,您需要为此 INT 定义 ISR:

3.清除 CP15控制寄存器(SCTLR)的第19位,以禁用生成 未定义指令异常
MRC P15,0,<Rd>,C1,c0, 0;读取 SCTLR
MCR P15,0,<Rd>,C1,c0, 0;写入 SCTLR
为了补充 QJ Wang 所说的话, 在 TMS570LC4357:浮点溢出和下溢检测中 有一个指向示例程序的链接。