MDK debug时出现*** error 65: access violation at

2023-05-16

简介

本文针对的是访问内存权限的问题,其他问题暂时不讨论。

问题描述

使用mdk arm调试keil工程的时候遇到错误*** error 65: access violation at 0xE0042004 : no ‘write’ permission,如下图:
1234

问题分析

访问内存地址没有权限,可能是没有读权限,可能是没有写权限或者执行权限。

解决办法

办法1:

进入debug模式,调出memory map工具(在debug选项下),添加对应的内存映射范围,并设置权限;

如下图所示:
12

办法2:

新建一个*.ini文件,把内存映射范围和权限添加进去(使用MAP命令),然后把这个文件设置为debug初始化脚本。示例如下:

//
/
STM32DBG.INI: STM32 Debugger Initialization File /
/
/
// <<< Use Configuration Wizard in Context Menu >>> //
//
/
This file is part of the uVision/ARM development tools. /
/
Copyright © 2005-2007 Keil Software. All rights reserved. /
/
This software may only be used under the terms of a valid, current, /
/
end user licence from KEIL for a compatible version of KEIL software /
/
development tools. Nothing else gives you the right to use this software. /
/
/
MAP 0xE0042004, 0xE0042104 READ WRITE // allow R/W access to IO space

FUNC void DebugSetup (void) {
// Debug MCU Configuration
// <o1.0> DBG_SLEEP Debug Sleep Mode
// <o1.1> DBG_STOP Debug Stop Mode
// <o1.2> DBG_STANDBY Debug Standby Mode
// <o1.5> TRACE_IOEN Trace I/O Enable
// <o1.6…7> TRACE_MODE Trace Mode
// <0=> Asynchronous
// <1=> Synchronous: TRACEDATA Size 1
// <2=> Synchronous: TRACEDATA Size 2
// <3=> Synchronous: TRACEDATA Size 4
// <o1.8> DBG_IWDG_STOP Independant Watchdog Stopped when Core is halted
// <o1.9> DBG_WWDG_STOP Window Watchdog Stopped when Core is halted
// <o1.10> DBG_TIM1_STOP Timer 1 Stopped when Core is halted
// <o1.11> DBG_TIM2_STOP Timer 2 Stopped when Core is halted
// <o1.12> DBG_TIM3_STOP Timer 3 Stopped when Core is halted
// <o1.13> DBG_TIM4_STOP Timer 4 Stopped when Core is halted
// <o1.14> DBG_CAN_STOP CAN Stopped when Core is halted
//

_WDWORD(0xE0042004, 0x00000027); // DBGMCU_CR
_WDWORD(0xE000ED08, 0x20000000); // Setup Vector Table Offset Register
}

DebugSetup(); // Debugger Setup

关键语句:MAP 0xE0042004, 0xE0042104 READ WRITE
其他不用关心

3

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MDK debug时出现*** error 65: access violation at 的相关文章

  • error:Target dll has been cancelled.debugger aborted

    MDK4 23调试裸机程序 出现这个问题先记下 以前成功调试过的 这次用又不会了 找一下以前的文章 今天开始摸索MDK高版本调试S3C2440裸机程序 3 4版本的实质上是借用Jlink的软件JLinkARM dll和JLinkRDI dl
  • 利用js去除无限debugger

    极简壁纸F12后悔无限debug 还会一直增加内存 导致卡机 将下面的代码放到开发者选项的Console里面 回车 就可以终止debug了 去除无限debugger Function prototype constructor back F
  • spyder debug

    按钮作用 1 debug file 进入调试 2 run current line 运行当前行 3 step into function or method of current line 进入函数或方法内运行 4 run until cu
  • 【python】‘DataFrame‘ object has no attribute ‘as_matrix‘

    问题 解决 网上的文章可能比较老 使用的是老版本的pandas 目前新版本的pandas这个方法没有了 更换成了别的实现方式 data as matrix 更改为 data iloc values
  • QT5.9 编译 OCI (安装的时候没有选择sources)

    由于前几天为了安装Qt快一点 没有选择sources 所以导致了要连接oracle 没有驱动 该这么办呢 1 http download qt io archive qt 5 9 5 9 1 single 下载 qt everywhere
  • vscode——debugger

    提示 本文适用于vscode编译java代码调试初学者 文章目录 debugger图标介绍 左侧工具栏 调试代码 debugger图标介绍 在进行调试之前我们应先在代码前打断点 调试程序时 代码就会运行至断点位置然后停下 断点即为行数前小红
  • MySQL8.0.12 EXPLAIN EXTENDED 报错问题

    今天测试时发现有一条命令报错 explain EXTENDED SELECT count from OORDER where O CARRIER ID lt 10000 网上的教程都是explain EXTENDED 后来查看官方文档发现e
  • VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tupl

    VisibleDeprecationWarning Creating an ndarray from ragged nested sequences which is a list or tuple of lists or tuples o
  • Django中解决redis-py versions 3.2.0 or later. You have 2.10.6版本问题

    问题描述 在django项目中 添加异步任务 跑服务时遇到redis py版本问题 如下截图 提示版本较低 解决 从4 3 0到4 4 0的Kombu更新停止了对redis py v2 10 6的支持 因此迫使我们升级redis py版本
  • 教你如何简单的在windows 10使用Debug

    很多有Windows 10 系统的小伙伴都想要学习汇编 那么怎样搭建debug环境好呢 小编发现 很多这种类似的教程都是叫你去安装Dosbox 这就有一篇教你用用这种方法搭建的 但是不好的事那个界面有点让小编看着不舒服 当然你也可以选择使用
  • 使用JDWP远程debug

    JDWP JDWP是Java Debug Wire Protocol 的缩写 它 定义了调试器 debugger 和被调试的Java虚拟机 target vm 之间的通信协议 SpringBoot debug 1 springboot框架搭
  • version `GLIBCXX_3.4.14‘ not found

    Gate usr lib64 libstdc so 6 version GLIBCXX 3 4 14 not found required by Gate 本人测试gcc 8 3 0装不上 可考虑7 30亲测可装 4 81也测试过了 可以装
  • 嵌入式开发中logout两种实现方式与原理

    1 如果没有logout头文件 利用 include
  • Windows安装程序遇到错误:0x80240037

    在安装微软的程序时遇到此错误 本例以安装PB的帮助文档为例 解决办法是 第一步 更改安装文件后缀 第二步 Win R执行 第一步 将msu后缀更改为cab 更改后变为 然后将其解压到一个新文件夹 比如cab 解压后的内容为 第二步 WIN
  • Go_异常处理

    Error 异常就是程序出现了不正常的情况 会导致程序非正常停止 而异常处理就是针对非正常停止的情况 给出异常时的处理方式 语法错误不算异常体系中 error是一个接口 作用是返回程序异常的信息 errors实现了error type er
  • [error] MFC错误不能将参数1从"const char [3]"转换为"const wchar_t *"

    在做项目中经常遇到很多错误 这里我仅仅把自己遇到的一些错误和解决方法写出 供自己和大家查看 代码如下 CRect rect GetClientRect rect CString str str Format ld rect bottom M
  • [ERROR NumCPU]: the number of available CPUs 1 is less than the required 2

    出现上述错误的原因 因为物理机或者虚拟机不满足Kubernetes的基础配置造成的 而Kubernetes对GPU要求至少是2核 2G内存 W0123 08 22 23 322562 12102 validation go 28 Canno
  • CMake Error: Cannot determine link language for target “test“.

    问题来源 project kinodyntest LANGUAGES CXX 先指定语言c add executable 后面传入的文件是 c 文件导致cmake报错 c 文件为 cpp
  • Conversion to Dalvik format failed with error

    Conversion to Dalvik format failed with error 1解决方法 第一种情况包导入错误 点击工程 gt build path gt libraries gt 选中android1 x 或者android
  • IDEA如何进行debug调试

    IDEA如何进行debug调试 第一步 设断点 打开debug 第二步 使用Debug调试的功能键 程序调试 相信是所有程序员必经之路 因为程序写出来是不可能没有错误的 当然除了非常简单的一些程序之外 相信大家肯定使用过不同的编译软件 都有

随机推荐

  • Linux使用chrony让局域网内的服务器时间同步

    Linux使用chrony让局域网内的服务器时间同步 在生产环境经常会因为时间的问题出现过问题 xff0c 例如应用节点和数据存节点时间不一致 xff0c 造成检索不到数据的问题等 在现在不管是公有云 私有云还是混合云等在建设过程中 xff
  • linux将本地库JAR批量导入到Nexus3.x

    linux将本地库JAR批量导入到Nexus3 x 文章目录 linux将本地库JAR批量导入到Nexus3 x1 问题描述2 搭建Nexus私服2 1 官网下载 xff1a 2 2 上传并解压2 3 修改默认端口2 4 修改内存分配 xf
  • 如何下载npm离线安装包

    如何下载npm离线安装包 如何将本地nodejs库 xff0c 放入到nexus的npm库 在代码工程目录使用 npm install 安装 package json 所依赖的文件 xff0c 并依赖下载到 node modules 目录
  • 批量下载npm离线安装包

    批量下载npm离线安装包 上篇讲到如何下载npm离线安装包的几种思路 https blog csdn net xinle0320 article details 124285708 1 批量下载npm离线安装包 三种方式 通过 packag
  • Fiddler抓取Java应用HTTP请求报文

    Fiddler抓取Java应用HTTP请求报文 1 监听Tomcat的http请求报文 在catalina bat添加一行 xff08 proxyPort的值为fiddler端口号 xff09 span class token builti
  • NPM软件包发布到Nexus

    NPM软件包发布到Nexus 文章目录 1 Linux安装nodejs环境2 创建镜像仓库3 添加nexus权限4 设置镜像仓库地址5 发布单个包6 发布tgz包7 批量发布npm包到私有仓库8 查看nexus的npm仓库9 测试 1 Li
  • docker安装minio

    docker安装minio 1 拉取镜像2 查看镜像3 创建目录4 指定控制台端口启动4 查看日志5 登录控制台页面6 Create Bucket7 浏览文件 1 拉取镜像 span class token function docker
  • docker minio设置永久免密下载链接

    docker minio设置永久免密下载链接 上篇 docker安装minio 前言 minio分享文件的链接 xff0c 最多支持分享七天 通过minio client管理存储桶策略的方式实现文件链接永久有效 这样就可以免密搭建个人图片等
  • printf重定向的相关总结

    简介 实现printf重定向有多种方式 xff0c 下面一一介绍 linux环境下 虽然linux系统的默认标准输出设备是显示器 xff0c 但是我们可以把printf打印输出的内容重定向到其他设备或文件 方法如下 xff1a 方法1 xf
  • 安装ES7.x集群

    安装ES集群 文章目录 安装ES集群一 环境准备1 1 准备三台Linux主机1 2 ES集群环境规划1 3 修改 etc hosts 二 下载部署包2 1下载jdk部署包2 2下载ES相关部署包 三 环境安装3 1安装JDK8环境3 1
  • es7.x升级log4j版本

    es7 x升级log4j版本 下载log4j2 18 0 下载地址 xff1a https dlcdn apache org logging log4j 2 18 0 apache log4j 2 18 0 bin tar gz 其他版本
  • 使用logstash迁移ES1.x数据到ES7.x

    使用logstash迁移ES1 x数据到ES7 x tar span class token operator span zxvf logstash span class token operator span span class tok
  • ES创建索引模板设置分片和副本数及时间格式问题

    创建索引模板设置分片和副本及时间格式问题 一 创建索引模板 PUT template event template default span class token punctuation span span class token str
  • es7 扩展词库

    elasticsearch 7 x x 扩展ik分词词库 支持mysql 热部署 https blog csdn net laow1314 article details 124236262 Elasticsearch 7 X Ik源码解读
  • es相关参数优化

    es相关参数优化 生产环境 jvm参数资源可以调整大一些 xff0c 系统的内存的一半给ES服务 xff0c 最大不超过32G xff0c 剩下的资源留给底层Lucene缓冲 xff1b 独立部署ES服务 xff0c 可以使用64G内存的节
  • ROS中rqt_graph报错节点图空白问题

    ROS中rqt graph报错节点图空白问题 我的环境配置 xff1a 1 VM ware虚拟机安装的ubuntu系统20 04 2 ROS版本是noetic 问题如下 xff1a 最近在学习ROS过程中遇到了rqt graph报错的问题
  • ROS中Gazebo无响应解决办法

    标题ROS中Gazebo无响应解决办法 在终端输入gazebo没有反映 xff0c 进行下面两句操作 首先输入下面的代码 gazebo span class token operator span verbose 观察到报错显示原因为有另一
  • 快速平方根倒数算法深度理解

    快速平方根倒数算法深度理解 快速平方根倒数算法是什么 xff1f 简单来说这个算法避开了开方和除法运算快速实现了 y 61 1 x
  • Ubuntu 14.04安装openwrt

    OpenWRT 编译环境搭建 配置编译环境 必须使用非root用户 xff0c ArchLinux需要创建新用户 安装依赖包 Ubuntu 14 04 必选 apt get install asciidoc bash bc binutils
  • MDK debug时出现*** error 65: access violation at

    简介 本文针对的是访问内存权限的问题 xff0c 其他问题暂时不讨论 问题描述 使用mdk arm调试keil工程的时候遇到错误 error 65 access violation at 0xE0042004 no write permis