0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

应用笔记|巧用 STM32CubeIDE 之编译警告

STM32单片机 来源:未知 2023-06-29 17:35 次阅读

关键字:STM32CubeIDE,warning,编译警告

目录预览

1 前言2 巧用 warning3 小结

1. 前言

编译警告对于工程师们来说,是再常见不过的东西了。对于严谨的工程师们,任何 warning 都是不会忽视的。

2. 巧妙使用 warning

在 STM32CubeIDE 中可以通过warning(甚至 error)的方式来通知工程师,使得一些容易遗漏的配置得到重视。

例如,在释放参考代码给客户时,希望客户注意到里面的项目名称和项目版本,那么我们可以在代码中,通过“#error ”来强调必须要修改的信息,通过“#warning”来备注需要注意的信息。具体代码如图 1:

078b9332-1660-11ee-962d-dac502259ad0.png

这样,当客户编译工程时,会出现 error 和 warning,见图 2,只有将“#error”和“#warning”两行分别注释掉,才会分别消除这两项编译信息,以此达到警示客户的目的。

07ab9d4e-1660-11ee-962d-dac502259ad0.png

2.1. 主动屏蔽特定的 warning

在有些场景,我们还可以在特定的代码或者文件作用域内,主动屏蔽特定的warning。

例如,工程中写了一个测试函数“void MyTestFunction(void)”,但是在工程中暂时没有被调用,直接编译会得到“Wunused-function”的 warning。

但是如果在代码中添加这样的语句:

#pragma GCC diagnostic ignored "-Wunused-function"。

/*此区间内,如果出现函数仅申明,但是没有被调用时,编译不产生warning*/voidMyTestFunction(void){…}

#pragma GCC diagnostic pop

因为我们配置了“-Wunused-function”,那么在编译时,即使 MyTestFunction 没有被调用,编译也不产生 warning。

我们还可以在 STM32CubeIDE 中,通过“Help”->“Information Center”->“Read STM32CubeIDE Documentation”->“C/C++ Compiler”,找到 GCC 编译器文档,从而发现更多的 warning 选项,根据需要主动屏蔽更多的 warning。见图 3 :

07e032f2-1660-11ee-962d-dac502259ad0.png

3. 小结

事实上,在编译项目时,warning 和 error 同样重要,部分隐蔽的问题可能就和warning 相关。当我们对工程代码和编译器有了更深层次的了解后,可以巧妙地使用和屏蔽 warning,帮我们更好地管理项目。

完整内容请点击“阅读原文”下载原文档。

080f357a-1660-11ee-962d-dac502259ad0.png

长按扫码关注公众号

更多资讯,尽在STM32

点击“阅读原文”,可下载原文档


原文标题:应用笔记|巧用 STM32CubeIDE 之编译警告

文章出处:【微信公众号:STM32单片机】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6001

    文章

    43978

    浏览量

    620866
  • STM32
    +关注

    关注

    2240

    文章

    10674

    浏览量

    348794

原文标题:应用笔记|巧用 STM32CubeIDE 之编译警告

文章出处:【微信号:STM32_STM8_MCU,微信公众号:STM32单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32CubeMX生成stm32cubeide工程报错的原因?怎么解决?

    生不成STM32CubeIDE工程,生成最后出个警告,说工程有问题,请问我的问题出在哪里? 所有路劲都使用了英文,没有中文字符
    发表于 04-07 07:14

    STM32CubeIDE找不到elf

    STM32CubeIDE是STMicroelectronics公司推出的一款集成开发环境(IDE),用于开发STM32系列微控制器的应用程序。它基于Eclipse开发平台,并集成了ST的驱动程序
    的头像 发表于 01-02 16:32 603次阅读

    STM32CubeIDE实用技巧之配置Heap空间

    STM32CubeIDE实用技巧之配置Heap空间
    的头像 发表于 10-31 17:30 723次阅读
    <b class='flag-5'>STM32CubeIDE</b>实用技巧之配置Heap空间

    巧用 STM32CubeIDE编译警告

    巧用 STM32CubeIDE编译警告
    的头像 发表于 10-25 16:33 557次阅读
    <b class='flag-5'>巧用</b> <b class='flag-5'>STM32CubeIDE</b> 之<b class='flag-5'>编译</b><b class='flag-5'>警告</b>

    关于STM32CubeIDE链接脚本的小问题

    电子发烧友网站提供《关于STM32CubeIDE链接脚本的小问题.pdf》资料免费下载
    发表于 09-20 11:25 0次下载
    关于<b class='flag-5'>STM32CubeIDE</b>链接脚本的小问题

    STM32CubeIDE实用技巧之ld链接文件

    电子发烧友网站提供《STM32CubeIDE实用技巧之ld链接文件.pdf》资料免费下载
    发表于 09-20 10:31 1次下载
    <b class='flag-5'>STM32CubeIDE</b>实用技巧之ld链接文件

    STM32CubeIDE实用技巧之仿真带外扩FLASH的工程

    电子发烧友网站提供《STM32CubeIDE实用技巧之仿真带外扩FLASH的工程.pdf》资料免费下载
    发表于 09-19 16:55 2次下载
    <b class='flag-5'>STM32CubeIDE</b>实用技巧之仿真带外扩FLASH的工程

    STM32CubeIDE实用技巧之配置堆空间

    电子发烧友网站提供《STM32CubeIDE实用技巧之配置堆空间.pdf》资料免费下载
    发表于 09-19 15:07 2次下载
    <b class='flag-5'>STM32CubeIDE</b>实用技巧之配置堆空间

    STM32CubeIDE快速入门指南

    电子发烧友网站提供《STM32CubeIDE快速入门指南.pdf》资料免费下载
    发表于 09-19 14:29 10次下载
    <b class='flag-5'>STM32CubeIDE</b>快速入门指南

    STM32CubeIDE中基于STM32L5系列的项目入门

    本应用笔记描述如何在意法半导体的 STM32CubeIDE 集成开发环境中开始基于 STM32L5 Series 微控制器的项目。
    发表于 09-08 06:42

    如何基于STM32CubeIDE中的设备配置创建Vision项目

    摘要STM32CubeIDE是STMicroElectronics为基于STM32的微控制器提供的免费工具链。 本应用笔记介绍了如何基于STM32CubeIDE中的设备配置创建Visi
    发表于 09-01 11:57

    用笔记 | 建立基于STM32CubeIDE的ClassB工程

    关键字:STM32CubeIDE,ClassB   目录预览 1.前言 2.准备 3.创建CubeMX工程 4.移植过程中可能遇到的问题 5.小结 0 1 前言 大家都知道ST的ClassB功能安全
    的头像 发表于 08-24 18:15 868次阅读
    应<b class='flag-5'>用笔记</b> | 建立基于<b class='flag-5'>STM32CubeIDE</b>的ClassB工程

    STM32CubeIDE中基于STM32L5系列的项目入门

    电子发烧友网站提供《STM32CubeIDE中基于STM32L5系列的项目入门.pdf》资料免费下载
    发表于 08-01 17:27 0次下载
    <b class='flag-5'>STM32CubeIDE</b>中基于<b class='flag-5'>STM32</b>L5系列的项目入门

    STM32CubeIDE安装指南

    电子发烧友网站提供《STM32CubeIDE安装指南.pdf》资料免费下载
    发表于 08-01 15:44 3次下载
    <b class='flag-5'>STM32CubeIDE</b>安装指南

    STM32CubeIDE ST-LINK服务器指南

    电子发烧友网站提供《STM32CubeIDE ST-LINK服务器指南.pdf》资料免费下载
    发表于 08-01 14:57 7次下载
    <b class='flag-5'>STM32CubeIDE</b> ST-LINK服务器指南