keil5中调试时设置断点出现灰色感叹号
在一定级别的优化之后,有些源程序代码行根本就没有对应的编译内容了,自然也就没办法打断点。
优化级别调高以后,调试的策略也要对应变化,以汇编代码段为准。
keil中调试的时候为什么不能设置断点了?? 双击无效!F无效
如果你鼠标点中的代码被编译器优化掉,这样的代码在硬件中不存在(被优化掉了),所以打不上断点的.
另外如果是断点个数超过硬件限制,一般会弹出一个提示断点个数过多的提示的.所以你要打断点的代码被优化的可能性比较大.
keil软件仿真时,预先设置的断点变成灰色惊叹号了,run的时候跳不到断点上来了。
你这根本没有成功地进行软仿……
注意 Command 窗口的致命错误提示:代码大小超出了(评估版的)限制。所以你的程序根本没法编译,没法编译也就没法加载进行调试。
keil5仿真没有设置断点,然后程序也会停止?
你是不是点的debug下载?
在像IAR和eclipse里分为debug和release这两个不同的区别。
一、前者debug的状态下下载程序话,如果没有将“断点完全删除”并且“再一次重新编译”那么就会出现停止的状态。不保证,不排除还有其它细节设置问题。如果排除问题的话,用bat命令删除全部缓存,全部重新编译。
二、如果另外出现程序错误的话,也同样会出现程序停止的情况。这个一般是触及到了中断,一直卡在中断里。
三、硬件问题,你用的stm32f1,检查一下jlink引脚,boot引脚,复位是否被其它占用(硬件上,软件上没设置)。检查该几个引脚电平状态,建议拿示波器看。
四、如果以上都没问题,重建工程,一行一行来。
#keil5在线调试看不到断点
上一篇
一块单片机能否单独工作_一块单片机能否单独工作一台电脑
下一篇
keil5的功能和优点_keil5功能介绍
相关文章
keil5每次都重新编译_keil怎么重新编译
keil怎么加芯片_keil怎么更换芯片型号
怎么把pack文件加入keil_pack怎么用
用keil5编写流水灯程序使偶数盏灯亮_流水灯的keil代码讲解
0条大神的评论
发表评论
keil5 load 不能用,编译完程序,load一直显示灰色什么情况
把debug设置成软件仿真了,改为jlink或你使用的工具就好了。
拓展:
1、编译(compilation , compile) 1.利用编译程序从源语言编写的源程序产生目标程序的过程。 2.用编译程序产生目标程序的动作。 编译就是把高级语言变成计算机可以识别的2进制语言,计算机只认识1和0,编译程序把人们熟悉的语言换成2进制的。 编译程序把一个源程序翻译成目标程序的工作过程分为五个阶段:词法分析;语法分析;语义检查和中间代码生成;代码优化;目标代码生成。
2、编译语言是一种以编译器来实现的编程语言。它不像直译语言一样,由解释器将代码一句一句运行,而是以编译器,先将代码编译为机器码,再加以运行。理论上,任何编程语言都可以是编译式,或直译式的。它们之间的区别,仅与程序的应用有关。主要是进行词法分析和语法分析,又称为源程序分析,分析过程中发现有语法错误,给出提示信息。
keil5提示说找不到芯片型号怎么解决?
从keil的官网上就可以下到驱动包,进去官网在找到下载页面,直接搜索你的芯片系列。下载文件如下图:
双击下载文件就可以进行安装。