完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
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 合并重复的字符串,并将字符串常量放到只读内存,防止被修改 |
|
|
|
在STM32CubeIDE中,debug模式和release模式下的单片机运行速度不同,主要是由于编译器对代码进行优化的不同。
在debug模式下,编译器会生成更详细的调试信息,以便调试时能够方便地查看变量的值、单步执行等。为了方便调试,编译器会关闭一些优化选项,例如函数内联和循环展开等。此外,debug模式还会启用一些额外的功能,如断言检查等,这些额外的功能也会影响程序的运行速度。因此,在debug模式下,程序的运行速度通常会比release模式下慢一些。 在release模式下,编译器会尽可能地对代码进行优化,以提高程序的运行速度和效率。编译器会启用一些优化选项,如函数内联、循环展开、空间优化等,以减少代码的执行时间和内存占用。因此,在release模式下,程序的运行速度通常会比debug模式下快一些。 要控制debug和release模式下的单片机运行速度,可以在STM32CubeIDE的项目设置中配置编译器的优化选项。可以根据具体的需求,选择合适的优化级别,或者手动调整各种优化选项。常见的优化选项有-O0(禁用优化)、-O1(启用基本优化)、-O2(启用更多优化)、-O3(启用全部优化)等。选择合适的优化级别和优化选项,可以在不影响代码功能的前提下,提高程序的运行速度。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1800 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1629 浏览 1 评论
1096 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
735 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1684 浏览 2 评论
1944浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
745浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
578浏览 3评论
601浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
564浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 04:46 , Processed in 0.776316 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号