是否可以在stm32Cubeide中生成无注释的main.c

问题描述 投票:0回答:1

嗯,我是 stm32 的新手,我一直在 arduino 上工作,只有设置和循环,只有一条评论。但是如果我从cubemx生成我的main.c,则使用stm32cubeide。哦天哪。我应该从哪里开始编写我的代码我很困惑。 是否有任何设置或类似主题来减少注释行?注释的开始和结束编号也非常奇怪的开始和结束位置。如“用户代码开始3”开始于无限while循环的结束,结束于无法到达的点。

/* USER CODE BEGIN 2 */
 
 /* USER CODE END 2 */
 
 /* Infinite loop */
 /* USER CODE BEGIN WHILE */
 while (1)
 {
   /* USER CODE END WHILE */
 
   /* USER CODE BEGIN 3 */
 }
 /* USER CODE END 3 */
arduino themes stm32cubeide stm32cubemx
1个回答
0
投票

更好的使用STM32CubeIDE的方法

我个人讨厌STM32CubeIDE生成“评论地狱”的方式。最好的办法就是不要使用它。我就是这样做的。

  1. 打开STM32CubeIDE,选择您的MCU并生成项目。 CubeMX 将生成包含所有注释的 main.c。

  2. main.c
    中添加函数原型的前向声明

/* Private function prototypes -----------------------------------------------*/ /* USER CODE BEGIN PFP */ void app_main(void); // add this line /* USER CODE END PFP */

    在所有 CubeMX 生成的配置函数调用之后但在
  1. app_main()
     中的 
    while(1)
    循环之前调用
    main()
/* USER CODE BEGIN 2 */ app_main(); /* USER CODE END 2 */

  1. 右键单击

    Project,在项目中创建一个新文件夹,选择 New -> Source Folder

  2. 右键单击新创建的

    app文件夹创建一个新的源文件,选择New -> Source File,然后将文件命名为您想要的任何名称,我将我的文件命名为app_main.c

IDE 将为您生成带有一些注释标题的文件,添加

app_main()

 函数模板:

/* * app_main.c * * Created: Aug 19, 2023 * Author: Henry Cheung */ #include "main.h" void app_main() { // your app setup code here // your 'loop()' here while(1) { } }
这将是您编写代码的地方,

while(1)

循环确保它永远不会返回到
main.c

    为了让STM32CubeIDE正确包含新创建的
  1. app
    文件夹和
    app_main()
    中的代码,右键单击
    Project -> Property。导航到 C/C++ General -> Paths and Symbols,单击选项卡 Source Location,然后单击 Add Folder<your_project>/app
     添加文件夹,单击 
    Apply and Close 进行保存。
屏幕截图显示了项目文件夹结构和IDE的最后一步配置。使用此配置,所有用户代码都将位于

app

 文件夹中(如果您有自己的 driver.c、driver.h 等),偶尔会有例外,您可能需要与生成的 
main()
 进行交互。

它消除了所有分散注意力的注释,并避免了您不小心将代码放在

main()

中错误位置的机会。我希望ST微电子有一天能够使用我的方法来配置STM32CubeIDE!

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.