学院网站开发网站定位,网站安全建设策划书,西语网站域名,泉州互联网公司排名【更多软件使用问题请点击亿道电子官方网站】 1、 文档背景
该客户使用的IDE为S32 Design Studio for ARM #xff0c;使用的编译器为GHS compiler#xff0c;调试器为PE。
客户在使用Ceil函数进行函数调用时#xff0c;编译可以正常通过#xff0c;但调试无法成功运行。… 【更多软件使用问题请点击亿道电子官方网站】 1、 文档背景
该客户使用的IDE为S32 Design Studio for ARM 使用的编译器为GHS compiler调试器为PE。
客户在使用Ceil函数进行函数调用时编译可以正常通过但调试无法成功运行。
并且出现下方错误信息
UsageFault: The processor has attempted to execute an undefined instruction.
HardFault: A fault has been escalated to a hard fault.
处理器试图执行一个未定义的指令。
HardFault:已升级为硬故障。 2、软硬件环境
1、软件版本S32 Design Studio for ARM 2.2
2、电脑环境Windows 11
3、外设硬件PE 3、解决步骤
1、原厂建议使用“-fsoft and then -fsingle”,查看GHS编译选项
Floating-Point Mode设置为Hardware Single, Software Double后尝试调试该硬件报错依旧存在。 图3-1
注
Hardware Single, Software Double (-fsingle) 用于单精度操作的硬件浮点模式用于双精度操作的软件浮点模式。与-hard相同的处理器支持此设置。对于Cortex-M4F默认开启-fsingle。
Software Emulation (-fsoft) SFP (Software floating-point)模式。此设置使目标使用整数寄存器来保存浮点数据并使用库子例程调用来模拟浮点操作。对于没有FPU的目标这是默认设置。如果目标有一个FPU这个设置选择一组不同的浮点库。 2、查看汇编语言出现vcmp.64调用并且函数执行到该地址时出现故障同步修改配置选择。 图3-2
3、将 “Floating-Point Coprocessor Version”同步设置为“VFP v5, 32 Double Registers”设置完成后程序运行成功。无vcmp.64调用。 图3-3
注
VFP v5, 32 Double Registers (-fpuvfpv5) VFP v5, 32双寄存器(-fpuvfpv5)使用VFP指令集的v5版本指定硬件浮点数具有32个双精度浮点寄存器。
————————————————————————
版权声明本文为博主原创文章遵循 CC 4.0 BY-SA 版权协议转载请附上原文出处链接和本声明。
关于亿道电子
亿道电子技术有限公司www.emdoor.cn是国内资深的研发工具软件提供商公司成立于2002年面向中国广大的制造业客户提供研发、设计、管理过程中使用的各种软件开发工具致力于帮助客户提高研发管理效率、缩短产品设计周期提升产品可靠性。