【GreenHills】GHS-Point导致的调试HardFault错误

【更多软件使用问题请点击亿道电子官方网站】

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 (-fpu=vfpv5) VFP v5, 32双寄存器(-fpu=vfpv5)使用VFP指令集的v5版本指定硬件浮点数,具有32个双精度浮点寄存器。

————————————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

关于亿道电子

亿道电子技术有限公司(www.emdoor.cn)是国内资深的研发工具软件提供商,公司成立于2002年,面向中国广大的制造业客户提供研发、设计、管理过程中使用的各种软件开发工具,致力于帮助客户提高研发管理效率、缩短产品设计周期,提升产品可靠性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/851751.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL中distinct去重关键字的使用和count统计组合的使用

文章目录 SQL中distinct的使用1、distinct作用于单列2、distinct作用于多列3、 count()、distinct组合使用conut扩展知识 SQL中distinct的使用 1、distinct作用于单列 语法: select distinct 列名 from 表; distinct必须在列的前面,否则直…

JavaScript变成anyScript了

any类型 目录 any类型 目录污染问题 首先说明一下,本人是前端小学生级别的菜鸡,吐槽的话请口下留情,在评论区指出错误或者补充不足,我会很喜欢,互喷不会进步,相互指点才会。。。。谢谢大家啦 &#x1f…

基于MATLAB仿真的BCC卷积码维特比译码算法

🧑🏻个人简介:具有3年工作经验,擅长通信算法的MATLAB仿真和FPGA实现。代码事宜,私信博主,程序定制、设计指导。 🚀基于MATLAB仿真的BCC卷积码维特比译码算法 目录 🚀1.BCC卷积码概…

Java的核心类库

引言 在Java编程中,熟练掌握常用类与对象操作是开发的基础。Java的核心类库提供了丰富的功能,可以帮助开发者高效地处理各种编程任务。本文将详细介绍Java字符串操作、集合框架、日期与时间处理等内容,并通过图表和表格进行总结与示范。 字符…

Tailwind CSS 实战指南:快速构建响应式网页设计

title: Tailwind CSS 实战指南:快速构建响应式网页设计 date: 2024/6/12 updated: 2024/6/12 author: cmdragon excerpt: 这篇文章介绍了Tailwind CSS框架的特点与优势,包括其作为实用性的CSS框架如何通过预设的样式类实现快速布局和设计,…

每日一题——Python实现PAT乙级1109 擅长C(举一反三+思想解读+逐步优化)七千字好文

一个认为一切根源都是“自己不够强”的INTJ 个人主页:用哲学编程-CSDN博客专栏:每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 初次尝试 代码分析 时间复杂度 空间复杂度 总结 我要更强 代码结构与功能 全局…

springboot+shiro+jwt 兼容session和token

最近和别的软件集成项目,需要提供给别人接口来进行数据传输,发现给他token后并不能访问我的接口,拿postman试了下还真是不行。检查代码发现项目的shiro配置是通过session会话来校验信息的 ,我之前一直是前后端自己写,用…

北京知名机床编程入门培训:探索技术的奥秘与突破

北京知名机床编程入门培训:探索技术的奥秘与突破 在北京这座科技与创新交织的城市中,机床编程作为现代制造业的核心技术,吸引了众多求学者的目光。而想要真正掌握这门技术,选择一家知名的机床编程入门培训机构显得尤为关键。本文…

学习Pr有哪些常见的使用的技巧?

本Premiere 学习笔记总结常见问题165条。不管你是初学的小白,或是刚进入剪辑学习软件阶段,还是说你学软件好几年了都有用处。因为这份总结涉及到了Pr的各个方面。既可以帮你解决软件出现的问题,也可以帮你熟知软件的实际应用,以及…

【江湖】离职经验之人在江湖

人在职场江湖 分享外面看不到的职场经验、人情世故和社会潜规则 一、老实人别再吃亏了!这些离职原因HR听了都闭嘴: 1、不说:活多钱少 要说:跟不上节奏 2、不说:公司哪里不好 要说:十分感谢公司对我的栽…

C# WPF入门学习番外篇(二) —— C# WPF使用数据库创建注册登录界面

C# WPF入门学习番外篇(二) —— C# WPF使用数据库创建注册登录界面 在这篇番外篇博客中,我们将介绍如何在C# WPF应用程序中使用数据库来创建一个简单的注册和登录界面。通过本教程,你将学习到如何在WPF中与数据库进行交互&#xf…

网格细分技术在AI绘画中的革新应用

导语: 随着人工智能技术的不断突破,艺术创作也迈入了一个新的时代。AI绘画不仅为艺术家提供了新的工具和灵感源泉,还极大地扩展了艺术的边界。在这背后,网格细分技术扮演着至关重要的角色,它通过将画面划分为数以万计的…

Android低代码开发 - 直接创建一个下拉刷新列表界面

看了我Android低代码开发 - 让IDE帮你写代码这篇文章的小伙伴,大概都对Dora全家桶开发框架有基本的认识了吧。本篇文章将会讲解如何使用dora-studio-plugin快捷创建一个下拉刷新列表界面。 效果演示 这样直接通过图形界面的方式就创建好了下拉刷新上拉加载空态界面…

旅游行业电商平台:数字化转型的引擎与未来发展趋势

引言 旅游行业数字化转型的背景和重要性 随着信息技术的飞速发展,数字化转型成为各行业发展的必然趋势。旅游行业,作为一个高度依赖信息和服务的领域,数字化转型尤为重要。通过数字化手段,旅游行业能够实现资源的高效配置、服务的…

用映射对比ab俩个数组 , 并把a的参数传递给b

项目背景 : react ant 需求 : 在项目进行表头设置时,根据aaa中的key和bbb中的name对应 , 并将sort值插入到bbb中 其中 a b 结构如下 具体实现 aaa[ { key: "orderNumber", orderNumber: "工单编号", sort: 1 } ... ]bbb [ { name: "orderNumber…

Jenkins For Windows编译构建C#项目环境搭建(完整版)

安装Jenkins 下载Windows安装包 官方下载地址 选择稳定版,这里下载的是最新版,如需下载指定版本点击 以前的发行版 配置java环境 下载 java jdk 17 jdk17官方下载链接 这里下载的是msi版本的安装包 安装jdk17 双击运行安装包,一直下…

【Android】Android获取设备Serial Number的方法

项目需求 获取Android 9 和Android 11的设备的SN序列号 解决方案 1.Android 9 获取方式 这个是Android官方提供的方法,可以获取到Android 8/9 的设备的SN号 String serial Build.SERIAL;Android 11 获取方式 Android 11 已经禁止了上面的这种方法,获…

3D数字化营销——电商行业提升转化率,降低退货率的杀手锏!

随着3D、AR等前沿技术的蓬勃发展,电商行业正迎来一场3D数字化营销的革命。这种创新的营销方式不仅极大地丰富了商品的展现形式,还成功弥补了传统电商在临场感和体验感方面的不足,从而显著提升了消费者的购物体验。 51建模网为电商行业提供3D…

Java面试题-进阶

Java面试题-进阶 1、分布式幂等性如何设计?2、说说你对分布式事务的了解?3、分布式事务的解决方案有哪些?4、分布式事务的二阶段提交是什么?5、分布式事务中的三阶段提交是什么?6、什么是分布式ID?7、分布式ID有什么特性?8、分布式ID生成有几种方案?9、分布式系统中幂等…

WebSocket 快速入门 与 应用

WebSocket 是一种在 Web 应用程序中实现实时、双向通信的技术。它允许客户端和服务器之间建立持久性的连接,以便可以在两者之间双向传输数据。 以下是 WebSocket 的一些关键特点和工作原理: 0.特点: 双向通信:WebSocket 允许服务…