CubeMX的main文件代码书写格式总结

1、头文件

如您需要在项目中使用一些自定义的函数或者需要包含一些额外的库,就应该在这个部分包含相应的头文件。

/* USER CODE BEGIN Includes */

/* USER CODE END Includes */

比如:

/* USER CODE BEGIN Includes */
#include "my_custom_header.h" // 包含自定义头文件
#include <math.h>             // 包含数学库
/* USER CODE END Includes */

2、私有类型定义(Private Type Definitions)

这些类型定义通常是与特定硬件相关的结构体、枚举或联合,它们在项目中用于定义数据的结构或硬件的配置。

/* USER CODE BEGIN PTD */

/* USER CODE END PTD */

比如:

/* USER CODE BEGIN PTD */
typedef struct {
    int16_t temperature;
    uint32_t pressure;
} SensorData;

enum LedState {
    LED_OFF,
    LED_ON,
    LED_BLINKING
};
/* USER CODE END PTD */

3、用户定义的宏(Public Definitions)和全局变量(Public Data Definitions)

这些定义通常是公用的,可以在整个项目中使用。

/* USER CODE BEGIN PD */

/* USER CODE END PD */

比如:

/* USER CODE BEGIN PD */
#define SENSOR_SAMPLING_RATE 1000 // 定义传感器采样率的宏

volatile uint8_t system_status = 0; // 定义一个全局变量来存储系统状态
/* USER CODE END PD */

4、私有宏(Private Macros)和全局变量(Private Data Definitions)

这些定义通常是私有的,只在当前的源文件中使用。

/* USER CODE BEGIN PM */

/* USER CODE END PM */

比如:

/* USER CODE BEGIN PM */
#define PRIVATE_MACRO_VALUE 42 // 定义一个私有宏

static uint8_t private_variable = 0; // 定义一个私有全局变量
/* USER CODE END PM */

5、私有变量(Private Variables)

这些变量通常是局部的,只在当前的源文件中使用。

/* USER CODE BEGIN PV */

/* USER CODE END PV */

比如:

/* USER CODE BEGIN PV */
static int32_t local_state = 0; // 定义一个私有变量来存储本地状态
static uint16_t temporary_value = 0; // 定义一个私有变量用于临时存储
/* USER CODE END PV */

6、私有函数原型(Private Function Prototypes)

这些函数原型声明了在当前源文件中定义的私有函数,它们通常只在当前的源文件中可见和使用。

/* USER CODE BEGIN PFP */

/* USER CODE END PFP */

比如:

/* USER CODE BEGIN PFP */
static void Private_Helper_Function(void); // 声明一个私有辅助函数
static int32_t Calculate_Something(int32_t a, int32_t b); // 声明一个私有计算函数
/* USER CODE END PFP */
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值