七毛钱 发表于 2022-3-11 14:49

stm32cubeide debug模式和release模式单片机运行速度不一样,在...

stm32cubeide debug模式和release模式单片机运行速度不一样,在哪里进行控制的

香水城 发表于 2022-3-11 22:59

能说具体点吗?具体什么速度差异?差异大吗?

debug release模式差别主要体现在代码里有些调试信息、优化方面有差异,

可能会有些代码大小、执行效率方面的差异。

但一般来讲不会有很明显的运行速度的差异。

cainiao97531 发表于 2022-3-15 09:01

香水城 发表于 2022-3-11 22:59
能说具体点吗?具体什么速度差异?差异大吗?

debug release模式差别主要体现在代码里有些调试信息、优化 ...

这个问题,我在st的支持中心提过,代码运行速度变慢了,我调试代码时发现的,通过控制一个IO输出高低电平中间加延时输出一个方波,在debug模式下一个完整的波形大概15us,在release模式下7us左右,官方的回复我也没看懂,可以麻烦你给解释一下吗,回复如下
Debug 版本:

  /MDd /MLd 或 /MTd 使用 Debug runtime library(调试版本的运行时刻函数库)

  /Od 关闭优化开关

  /D "_DEBUG" 相当于 #define _DEBUG,打开编译调试代码开关(主要针对

  assert函数)

  /ZI 创建 Edit and continue(编辑继续)数据库,这样在调试过

  程中如果修改了源代码不需重新编译

  /GZ 可以帮助捕获内存错误

  /Gm 打开最小化重链接开关,减少链接时间

  Release 版本:

  /MD /ML 或 /MT 使用发布版本的运行时刻函数库

  /O1 或 /O2 优化开关,使程序最小或最快

  /D "NDEBUG" 关闭条件编译调试代码开关(即不编译assert函数)

  /GF 合并重复的字符串,并将字符串常量放到只读内存,防止

  被修改

ex7s4 发表于 2022-3-15 13:58

不会吧,一般都是正常的啊?

suw12q 发表于 2022-3-15 14:12

没遇到过,这个估计得在软件设置了吧

l1uyn9b 发表于 2022-3-15 14:24

可能是有些调试信息吧,但是应该也不会占用很多速度吧

p0gon9y 发表于 2022-3-15 14:57

你可以问问官方的技术支持,不过我觉得我应该不会差很多速度

t1ngus4 发表于 2022-3-15 15:36

这个控制好像没有吧,不知道在哪儿设置
页: [1]
查看完整版本: stm32cubeide debug模式和release模式单片机运行速度不一样,在...