你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

Cubemx 如何添加用户文件(.c/.h文件),使重新使用cubemx生成代码时文件不在工程中消失?

[复制链接]
小智 提问时间:2024-6-25 16:58 / 已解决

现在使要么所有代码都需要挤在cubemx生成的这些文件中,要么每次生成代码之后手动添加文件夹或目录。

有没有简单快捷些的方式?

现在我的工程配置是这样的:image.png

收藏 评论8 发布时间:2024-6-25 16:58

举报

8个回答
xmshao 最优答案 回答时间:2024-6-26 09:01:47
如果是在CubeMx生成的文件里添加用户代码的话,注意放在类似下面框架下:


/* USER CODE BEGIN n */


                HAL_Delay(500);
        huart3.gState = HAL_UART_STATE_READY;
        
        HAL_UART_Transmit_DMA(&huart3,(uint8_t *)"Hello,STM32!\r\n",sizeof("Hello,STM32-1!\r\n"));
      
        HAL_Delay(500);
        huart3.gState = HAL_UART_STATE_READY;
        
        HAL_UART_Transmit_DMA(&huart3,(uint8_t *)TX_Buffer,sizeof(TX_Buffer));


/* USER CODE END n */


即总放在 user code begin 和 user code end之间。


至于你额外添加的文件或目录,即使再生成文件时是不会影响的。
wenyangzeng 回答时间:2024-6-25 19:54:09

/ USER CODE BEGIN 1 /

插在这两行中间即可

/ USER CODE END 1 /

小智 回答时间:2024-6-26 10:29:32

xmshao 发表于 2024-6-26 09:01
如果是在CubeMx生成的文件里添加用户代码的话,注意放在类似下面框架下:</p>
<p>

你好,感谢回复。

这是我在工程中新建的目录和插入的文件,重新生成后会消失,每次都需要重新添加目录和文件

image.png

image.png
小智 回答时间:2024-6-26 10:32:05

wenyangzeng 发表于 2024-6-25 19:54
/<em> USER CODE BEGIN 1 </em>/</p>
<p>插在这两行中间即可

[md]你好,感谢回复。

我指的是增加非CubeMX软件自动生成的C文件会在生成被自动清除(在工程的文件目录中)

image.png

xmshao 回答时间:2024-6-26 13:48:28

小智 发表于 2024-6-26 10:32
你好,感谢回复。</p>
<p>我指的是增加非CubeMX软件自动生成的C文件会在生成被自动清除(在工程的文件目录 ...

[md]我测试了下,基于IAR,新增用户目录和文件是没有影响的。

在MDK环境下,在已有目录下增加文件没有问题的,新增目录感觉有点问题。

wenyangzeng 回答时间:2024-6-26 15:58:36

小智 发表于 2024-6-26 10:32
你好,感谢回复。</p>
<p>我指的是增加非CubeMX软件自动生成的C文件会在生成被自动清除(在工程的文件目录 ...

那应该是缺少了.h文件C++的路径配置

image.png

xmshao 回答时间:2024-6-26 17:43:09

wenyangzeng 发表于 2024-6-26 15:58</p>
<p>那应该是缺少了.h文件C++的路径配置

[md]哦~!谢谢反馈~!

小智 回答时间:2024-7-3 14:52:17

😄 确实不会删除用户文件,不知道之前是什么配置没弄对,现在没问题了!

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版