要解决一个问题就怕不知道怎么搜索,或是别人没有遇到过:

同样碰到Keil MDK Debug调试无法设置断点问题,首先来问百度,GOOGLE,一下是我搜索到的结果:

 

1、keil 不能设置断点,每次点调试都出现以下对话框, 有几个按钮不能点。

解决办法:购买正版Keil或够找破解包,worldsing笔记里有(仅供学习用),商业请支持正版;

 

2、软件能Debug, 硬件无法Debug, 硬件仿真Debug时提示:

**JLink Warning: T-bit of XPSR is 0 but should be 1. Changed to 1.

 

解决办法:仿真器有问题,Keil 与仿真器驱动不匹配,找到KEIL的安装目录里的Segger文件夹,里面有4个主要的文件:

JL2CM3.dll
JLink.exe
JLinkARM.dll
JLTAgdi.dll

把这几个DLL换成老版本的。

 

 

3、部分C代码行不能设置断点,如第4行无法设置断点

 

解决办法:修改C/C++编译选项,默认是Leve 0(O0) 即不做优化。

 

 

4、无法软件仿真, 无法运行到main()

 

解决办法:Target Options –> Output –> Debug information 勾上

 

 

 

5、在Keil 在RAM中无法设置断点

解决办法:STM32 在MDK Keil下,RAM中进行调试,可设置断点

 

 

6、Keil调试时提示:

*** error 65: access violation at 0x40021008 : no 'write' permission

*** error 65: access violation at 0x40021004 : no 'read' permission

 

解决办法:选择的CPU型号与代码不符合,Target Options –> Device换个大容量型号的或该代码

 

7、Keil Debug时部分C文件无法设置断点,代码能正在Flash运行,这个是笔者遇到的问题,没有

搜到解决答案,试过以上6中方法 都没能得到解决。如下图所示60的代码能正常运行,但就是不能

打断点,也没有被优化。

 

解决办法:查看不能打断点的C文件是否含有内嵌汇编代码或是否含有汇编C函数,把汇编代码提出来,调试

完毕后再合并成原来的文件。

 

Keil MDK 无法设置断点【worldsing】的更多相关文章

  1. keil MDK注意事项

    1.MDK中的char类型的取值范围是? 在MDK中,默认情况下,char 类型的数据项是无符号的,所以它的取值范围是0-255.它们可以显式地声明为signed char 或 unsigned.因此 ...

  2. Keil MDK下如何设置非零初始化变量

    一些工控产品,当系统复位后(非上电复位),可能要求保持住复位前RAM中的数据,用来快速恢复现场,或者不至于因瞬间复位而重启现场设备.而keil mdk在默认情况下,任何形式的复位都会将RAM区的非初始 ...

  3. Keil MDK下如何设置非零初始化变量(转)

    源:Keil MDK下如何设置非零初始化变量 一些工控产品,当系统复位后(非上电复位),可能要求保持住复位前RAM中的数据,用来快速恢复现场,或者不至于因瞬间复位而重启现场设备.而keil mdk在默 ...

  4. Keil MDK下如何设置非零初始化变量(复位后变量值不丢失)

    一些工控产品,当系统复位后(非上电复位),可能要求保持住复位前RAM中的数据,用来快速恢复现场,或者不至于因瞬间复位而重启现场设备.而keil mdk在默认情况下,任何形式的复位都会将RAM区的非初始 ...

  5. Keil MDK入门---从新建一个工程开始

    熟悉Keil C51的朋友对于Keil MDK上手应该比较容易,毕竟界面是很像的.但ARM内核毕竟不同于51内核,因此无论在设置上还是在编程思想上,都需要下番功夫研究的.本文以MDK V4.03为例, ...

  6. 转:Keil MDK从未有过的详细使用讲解

    来自:http://blog.csdn.net/zhzht19861011/article/details/5846510 熟悉Keil C 51的朋友对于Keil MDK上手应该比较容易,毕竟界面是 ...

  7. Keil MDK从未有过的详细使用讲解

    转自博客:http://blog.csdn.net/zhzht19861011/article/details/5846510 这博主关于MDK 的使用的文章,写的得TM的好  TM的实用! 真心收藏 ...

  8. Keil MDK从未有过的详细使用讲解(转)

    这博主关于MDK 的使用的文章,写的得TM的好  TM的实用! 真心收藏! 熟悉Keil C 51的朋友对于Keil MDK上手应该比较容易,毕竟界面是很像的.但ARM内核毕竟不同于51内核,因此无论 ...

  9. KEIL MDK 5.12帮你快速建工程模板的技巧

    KEIL 5帮你快速建工程模板的技巧 本人使用keil mdk 5.12有一段时间了,发现keil mdk 5.12里面驱动库比较方便.这个新功能可以节省我们的时间,也可以让初学者能尽快上手和掌握这个 ...

随机推荐

  1. JS中访问对象的属性

    方式一: 对象名.属性名;   方式二: 对象名["属性名"];   ★注意:方式二中,属性名以字符串的形式出现在方括号中,这意味着通过方式二访问属性的话,可以实现“动态访问对象的 ...

  2. WinAPI——钩子函数大全

    SetWindowsHookEx 函数功能:该函数将一个应用程序定义的挂钩处理过程安装到挂钩链中去,您可以通过安装挂钩处理过程来对系统的某些类型事件进行监控,这些事件与某个特定的线程或系统中的所有事件 ...

  3. [ffmpeg 扩展第三方库编译系列] 关于需要用到cmake 创建 mingw32编译环境问题

    我在这里给出我编译的例子 cmake -G"MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=& ...

  4. Hadoop伪分布模式配置部署

    .实验环境说明 注意:本实验需要按照上一节单机模式部署后继续进行操作 1. 环境登录 无需密码自动登录,系统用户名 shiyanlou,密码 shiyanlou 2. 环境介绍 本实验环境采用带桌面的 ...

  5. Java [leetcode 17]Letter Combinations of a Phone Number

    题目描述: Given a digit string, return all possible letter combinations that the number could represent. ...

  6. 多线程程序设计学习(12)Thread-soecific storage pattern

    Thread-Specific-Storage[线程保管箱] 一:Thread-Specific Storage的参与者--->记录日志的线程(ClientThread)--->负责获取不 ...

  7. 【转】 实现 Cocos2d-x 全局定时器

    转自:http://www.tairan.com/archives/3998 cocos2d-x 中有自己的定时器实现,一般用法是在场景,层等内部实现,定时器的生命周期随着它们的消亡而消亡,就运行周期 ...

  8. 设计模式Day01

    一.工厂模式 1.工厂模式的关键点就是如何描述好这两个角色之间的关系,分为四种情况: (1)单一产品系,工厂生产一种类型的产品: (2)多产品系,特征相同.工厂生产多种类型的产品: (3)多产品系,部 ...

  9. WCF 学习总结2 -- 配置WCF

    前面一篇文章<WCF 学习总结1 -- 简单实例>一股脑儿展示了几种WCF部署方式,其中配置文件(App.config/Web.config)都是IDE自动生成,省去了我们不少功夫.现在回 ...

  10. xmlns 属性

    xmlns 属性 xmlns 属性可以在文档中定义一个或多个可供选择的命名空间.该属性可以放置在文档内任何元素的开始标签中.该属性的值类似于 URL,它定义了一个命名空间,浏览器会将此命名空间用于该属 ...