STM32CubeIDE基础学习-STM32CubeIDE软件代码编写格式问题

STM32CubeIDE基础学习-STM32CubeIDE软件代码编写格式问题


前言

代码编写最好就是规定一个格式,或者建立一个偏好,这样写出来的代码就方便自己管理了,不然代码乱放下次打开工程就很难找到具体位置,如果规定了格式,那么下次一打开工程就自然知道这段代码就在这个位置可以找到了。


当打开工程的main文件时,会发现有很多这种 ...BEGIN...和...END...的注释字样,如下图所示:

这个STM32CubeIDE代码环境就是这样规定的,用户不能像在MDK软件那样随意在某一些地方写代码,而需要用户在BEGIN和END之间写对应的代码才行,如果写的代码不在这个规定范围内,则CubeMX重新配置生成工程代码时,系统就会把这些不在指定区域内的代码覆盖掉了,再也无法找回这些用户代码了,只有在BEGIN和END之间写的代码才会保留下来。估计这个应该是开发者为了规范代码设置的一个很好的处理了吧。

在实际写程序时,根据头部的英文注释说明,写到规定的位置就可以了。

比如变量、宏定义、函数声明等,他们都有相应的位置,刚开始的时候可能会有点不习惯这种写法,后面代码写多了自然就习惯了。

具体区域代表含义如下图所示:

如果是其它的模块代码,可以独立创建一个.c / .h文件来存放相关模块代码,比如LED驱动代码,则对应新建一个led.c和一个led.h文件就行,这样就比较方便模块化管理代码了。

如果涉及到中断相关处理的代码,可以写到stm32f1xx_it.c文件中,这样只是为了方便管理代码的,如果放在其它文件也是可以的。

具体简单代码示例:

相关推荐
-Springer-5 小时前
STM32 学习 —— 个人学习笔记11-1(SPI 通信协议及 W25Q64 简介 & 软件 SPI 读写 W25Q64)
笔记·stm32·学习
yrx0203075 小时前
串口空闲中断+DMA接收+环形缓冲区 && 串口DMA发送+环形缓冲区
stm32·单片机
LCG元6 小时前
STM32实战:基于STM32F103的4G模块(EC20)HTTP通信
stm32·嵌入式硬件·http
送外卖的CV工程师7 小时前
STM32+Makefile编译+OpenOCD 烧录调试
stm32·单片机·嵌入式硬件·makefile·调试·烧录·openocd
ZHANG13HAO10 小时前
Android 13 特权应用(Android Studio 开发)调用 AOSP 隐藏 API 完整教程
android·ide·android studio
NQBJT11 小时前
嵌入式从零开始(第十二篇):调试与工具链 —— 从 IDE 到逻辑分析仪
ide·stm32·单片机·嵌入式硬件·c#
iCxhust12 小时前
51单片机定时器PWM发生
stm32·单片机·51单片机
LCG元12 小时前
STM32实战:基于STM32F103的智能宠物喂食器(定时+定量)
stm32·嵌入式硬件·宠物
水云桐程序员13 小时前
用C语言写LED灯嵌入式系统案例|STM32 LED控制与按键输入系统
c语言·stm32·单片机
iCxhust14 小时前
Keil µVision 调试指南---UART#1 模拟/调试窗口 完全使用教程
stm32·单片机·嵌入式硬件