MCU HardFault_Handler调试方法
一.获取内核寄存器的值
1.在MDK的DEBUG模式下,当程序出现跑飞后,确定卡死在HardFault_Handler中断处
2. 通过Register窗口读取LR寄存器的值来确定当前系统使用堆栈是MSP还是PSP
LR寄存器值 | 堆栈寄存器 |
---|---|
0xFFFFFFF9 | MSP寄存器 |
0xFFFFFFFD | PSP寄存器 |
如下图所示,当前程序使用的是PSP堆栈寄存器
二、查看堆栈寄存器保存的值
- 通过Register窗口确定MSP或PSP的地址
如下图所示,当前程序卡死时使用的堆栈寄存器为:PSP寄存器,地址为:0x20010318
- MSP、PSP堆栈寄存器介绍
由于异常发生时,内核将r0、r1、r2、r3、r12、r14(lr)、pc、xprs寄存器依次入栈
r14(lr):保存的是产生异常中断前内核执行的指令地址
r15(pc):保存的内核正在执行的指令地址
3 查看堆栈寄存器的保存值
将上面PSP寄存器的地址(0x20010318)输入到MDK的Memory窗口中得到的数据如下,第六个数为lr寄存器的保存值
三、定位lr寄存器地址的函数名
- 在工程编译后的map文件中,根据lr的地址确定运行函数,如下图所示在产生异常中断前,最后执行的地址为0x0801D727在函 prvAddCurrentTaskToDelayedList中,
- 分析产生异常中断的原因
四、获取lr寄存器保持地址的方法
- 通过MDK在线调试如上面介绍的流程
- 通过jlink工具使用命令行也可以完成上述过程的定位
JLink Commander调试方法
相关文章:

MCU HardFault_Handler调试方法
一.获取内核寄存器的值 1.在MDK的DEBUG模式下,当程序出现跑飞后,确定卡死在HardFault_Handler中断处 2. 通过Register窗口读取LR寄存器的值来确定当前系统使用堆栈是MSP还是PSP LR寄存器值堆栈寄存器0xFFFFFFF9MSP寄存器0xFFFFFFFDPSP寄存器 如下图所…...
【深度学习】AUTOMATIC1111 / stable-diffusion-webui docker
代码:https://github.com/AUTOMATIC1111/stable-diffusion-webui/ CUDA 11.8 制作了一个镜像,可以直接开启stable diffusion的web ui 服务。 确定自己的显卡支持CUDA11.8,启动此镜像方式: docker run -it --networkhost --gpu…...
[Hive] 查询结果保存
文章目录 1.插入新表追加 2.插入hdfs文件系统 1.插入新表 使用INSERT OVERWRITE语句的情况: 整个表:可以使用INSERT OVERWRITE TABLE table_name语句将查询结果直接覆盖整个表中的数据。 INSERT OVERWRITE TABLE table_name SELECT * FROM ...特定分区…...

Es中出现unassigned shards问题解决
1、一般后台会报primary shard is not active Timeout: … 出现这种问题表示该索引是只读了,没办法进行shard及存储操作,优先排除是系统存储盘满了 2、通过监控工具查看(cerebro) 发现该索引shard 1 损坏 也可以通过命令进行查看 GET _cluster/allo…...

RT-DERT:在实时目标检测上,DETRs打败了yolo
文章目录 摘要1、简介2. 相关研究2.1、实时目标检测器2.2、端到端目标检测器2.3、用于目标检测的多尺度特征 3、检测器的端到端速度3.1、 NMS分析3.2、端到端速度基准测试 4、实时DETR4.1、模型概述4.2、高效的混合编码器4.3、IoU-aware查询选择4.4、RT-DETR的缩放 5、实验5.1、…...
uniapp/H5富文本复制文本功能
代码实现: copy() {let replacedContent this.form.resTaskBaseInfoDetail.content;let text readHtml(replacedContent)// #ifdef H5let textarea document.createElement("textarea")textarea.value texttextarea.readOnly "readOnly"d…...

通付盾Web3专题 | 智能账户:数字时代基础单元
2008年10月31日,中本聪(Satoshi Nakamoto)在P2P foundation 网站发布比特币白皮书《比特币:一种点对点的电子现金系统》。转眼距比特币白皮书发布已过去15年。2009年1月比特币网络正式推出,当时每个比特币的价格仅为0.…...

java网上阅读网站系统eclipse定制开发mysql数据库BS模式java编程jdbc
一、源码特点 JSP 网上阅读网站系统是一套完善的web设计系统,对理解JSP java SSM框架 mvc编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,eclipse开发,数据库为Mysql5.0&a…...

人工智能基础_机器学习007_高斯分布_概率计算_最小二乘法推导_得出损失函数---人工智能工作笔记0047
这个不分也是挺难的,但是之前有详细的,解释了,之前的文章中有, 那么这里会简单提一下,然后,继续向下学习 首先我们要知道高斯分布,也就是,正太分布, 这个可以预测x在多少的时候,概率最大 要知道在概率分布这个,高斯分布公式中,u代表平均值,然后西格玛代表标准差,知道了 这两个…...

开源播放器GSYVideoPlayer的简单介绍及播放rtsp流的优化
开源播放器GSYVideoPlayer的简单介绍及播放rtsp流的优化 前言一、GSYVideoPlayer🔥🔥🔥是什么?二、简单使用1.First、在project下的build.gradle添加2.按需导入3. 常用代码 rtsp流的优化大功告成 总结 前言 本文介绍,…...

安卓手机数据恢复工具 DiskDigger Pro 中文版-适用于已获得 root 权限的设备!可以从您的存储卡或内存恢复数据
可以从您的存储卡或内存中取消删除和恢复丢失的照片、文档、视频、音乐等。 无论您是不小心删除了文件,还是重新格式化了存储卡,DiskDigger 强大的数据恢复功能都可以找到您丢失的文件并让您恢复它们。 注意:如果您的设备未获得 root 权限&a…...

Python 生成Android不同尺寸的图标
源代码 # -*- coding: utf-8 -*- import sys import os import shutil from PIL import Imagedef generateAndroidIcons():imageSource icon.pngicon Image.open(imageSource)sizes [(android/drawable,512),(android/drawable-hdpi,72),(android/drawable-ldpi,36),(andro…...
PHP使用GuzzleHttp进行HTTP请求
1,composer安装 composer require guzzlehttp/guzzle:~7.0 2,设置过期时间和跳过ssl验证 use GuzzleHttp\Client;$clientnew Client([timeout > 5, verify > false]);2,get请求 use GuzzleHttp\Client;$clientnew Client([timeout > 5, verif…...
pytorch笔记:allclose,isclose,eq,equal
1 allclose 1.1介绍 torch.allclose是一个PyTorch函数,用于检查两个张量是否在某个容忍度范围内近似相等 torch.allclose(input, other, rtol1e-05, atol1e-08, equal_nanFalse)input (Tensor) – 第一个输入张量other (Tensor) – 第二个输入张量rtol (float) –…...
YoloV8修改检测框为中心点
代码实现参考: https://github.com/computervisioneng/train-yolov8-custom-dataset-step-by-step-guide/blob/master/local_env/predict_video.py from ultralytics import YOLO from PIL import Image import cv2 import numpy as npmodel YOLO("/home/ps…...

文言一心中将C语言归类为低级语言,这对么?
文言一心中将C语言归类为低级语言,这对么? 以下是文言一心中的回答:C语言属于低级语言。低级语言通常指的是接近于机器语言的编程语言,它们与计算机硬件的交互更加直接,能够更高效地利用计算机资源。最近很多小伙伴找我ÿ…...
[补题记录] Codeforces Round 906 (Div. 2)(A~D)
URL:https://codeforces.com/contest/1890 目录 A Problem/题意 Thought/思路 Code/代码 B Problem/题意 Thought/思路 Code/代码 C Problem/题意 Thought/思路 Code/代码 D Problem/题意 Thought/思路 Code/代码 A Problem/题意 给出一个数组 A…...
Kubernetes yaml文件
目录 yaml文件 Pod yaml文件详解 deployment.yaml文件详解 Service yaml文件详解 文件 Kubernetes 支持 YAML 和 JSON 格式管理资源对象 JSON 格式:主要用于 api 接口之间消息的传递 YAML 格式:用于配置和管理,YAML 是一种简洁的非标记性…...

Linux——切换CUDA版本
一、查看本地cuda版本 cd /usr/local/ ls当前cuda为软连接,指向指定的cuda版本 stat cuda # 查看当前cuda状态信息二、切换CUDA版本 # 删除原有软连接 sudo rm -rf /usr/local/cuda # 建立需要切换的cuda软连接版本 sudo ln -s /usr/local/cuda-**.* /usr/l…...

利用云计算和微服务架构开发可扩展的同城外卖APP
如今,同城外卖APP已经成为了人们点餐的主要方式之一。然而,要构建一款成功的同城外卖APP,不仅需要满足用户的需求,还需要具备可扩展性,以适应快速增长的用户和订单量。 一、了解同城外卖APP的需求 在着手开发同城外卖…...

Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
JVM垃圾回收机制全解析
Java虚拟机(JVM)中的垃圾收集器(Garbage Collector,简称GC)是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象,从而释放内存空间,避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

Linux 中如何提取压缩文件 ?
Linux 是一种流行的开源操作系统,它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间,使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的,要在 …...

[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...

Chromium 136 编译指南 Windows篇:depot_tools 配置与源码获取(二)
引言 工欲善其事,必先利其器。在完成了 Visual Studio 2022 和 Windows SDK 的安装后,我们即将接触到 Chromium 开发生态中最核心的工具——depot_tools。这个由 Google 精心打造的工具集,就像是连接开发者与 Chromium 庞大代码库的智能桥梁…...

uniapp 小程序 学习(一)
利用Hbuilder 创建项目 运行到内置浏览器看效果 下载微信小程序 安装到Hbuilder 下载地址 :开发者工具默认安装 设置服务端口号 在Hbuilder中设置微信小程序 配置 找到运行设置,将微信开发者工具放入到Hbuilder中, 打开后出现 如下 bug 解…...

mac:大模型系列测试
0 MAC 前几天经过学生优惠以及国补17K入手了mac studio,然后这两天亲自测试其模型行运用能力如何,是否支持微调、推理速度等能力。下面进入正文。 1 mac 与 unsloth 按照下面的进行安装以及测试,是可以跑通文章里面的代码。训练速度也是很快的。 注意…...
SpringAI实战:ChatModel智能对话全解
一、引言:Spring AI 与 Chat Model 的核心价值 🚀 在 Java 生态中集成大模型能力,Spring AI 提供了高效的解决方案 🤖。其中 Chat Model 作为核心交互组件,通过标准化接口简化了与大语言模型(LLM࿰…...