5. 使用STM32CubeIDE新建工程

在前面的章节中我们介绍了如何安装STM32CubeIDE这个软件,本章中我们将使用STM32CubeIDE 来创建我们的第一个工程。

注意

创建STM32MP157的工程和其他系列STM32有细微的差别,请按照步骤来配置

5.1. 硬件连接

本实验板连接了4个LED灯,其中PA14所在引脚的LED灯作为linux系统的系统运行指示灯,PA13所控制的 LED在进入M4工程模式之后常亮,并不能在工程模式下使用。但在linux启动之后可作为普通引脚使用。

图 4-1 确定LED所在引脚

这些LED灯的阴极都是连接到STM32MP157的GPIO引脚,只要我们控制GPIO引脚的电平输出状态, 即可控制LED灯的亮灭。

5.2. 新建工程

打开STM32CubeIDE,会弹出工作空间的路径选择,如果没有特殊需求保持默认即可,注意如果有必要更改目录请选择中文 路径,点击“Launch”即可。

图 4-2

进入软件后,选择左上角的file–>new–>STM32 Project 新建工程,如下图所示

图 4-3

在第一次使用软件会更新一些组件,等待安装完成或者直接关闭均可。

图 4-4 CubeIde安装组件

5.2.1. 选择CPU型号

这个根据你开发板使用的CPU具体的型号来选择, 我们的实验平台是STM32MP157A型号的。 我们直接在搜索框输入型号STM32MP157A最终确认STM32MP157AACx为我们实际使用型号。

图 4-5 选择具体的CPU型号

点击next之后,输入新建工程的名字即可,在本工程中将简单地使LED闪烁, 工程名为“00NewProject”,随后点击Finish

图 4-6

之后会弹出如下的一个界面,点击No(Possibly Later)即可

图 4-7

5.2.2. 配置IO口

这个工程简单控制一个LED周期闪烁,我们只需要配置一个IO即可, 这里选定控制LED的引脚为PG2,通过搜索框搜索可以定位IO口的引脚位置, 图中会闪烁显示,配置PG2的属性为GPIO_Output。

../../_images/image86.png

与STM32其他系列单片机不同的是,配置STM32MP157的引脚还需要再进行一个步骤,选择配置好的引脚,点击鼠标右键 选择 PIin Reserved –> Cortex-M4,注意这个步骤是必不可少的不然不会生成GPIO引脚初始化的相关配置代码。

../../_images/image95.png

5.2.3. 进一步配置IO的具体属性

如图所示,将LED所在的引脚配置为推挽输出,上拉模式,中速模式引脚标签为LED1

../../_images/image106.png

5.2.4. 配置工程

接着选择Project Manager菜单,选择Code Generator 选项 勾选为每个配置外设生成独立的.c/.h文件

图 4-11 配置工程属性

5.2.5. 生成代码

选择project下的GENERATE CODE 生成我们所配置的代码

图 4-12生成代码

生成代码之后会弹出一个对话框,点击YES即可自动打开main.c文件

图 4-13生成代码

5.2.6. 添加用户测试代码

打开工程后在main函数中的主循环插入用户代码,目的是让LED周期闪烁。 这章节我们先让LED灯点亮起来,后面章节再来详细分析整个代码。 在while循环中添加以下代码

main.c
1
2
     HAL_GPIO_TogglePin(LED1_GPIO_Port,LED1_Pin);
     HAL_Delay(200);

在添加代码之后,点击工程左面的的 blue_led_CM4,再点击上面的小锤子编译工程, 在代码下方的区域会显示编译信息,可以看到现在已经编译成功并在工程目录下生成debug文件夹,如图所示

图 4-13编译工程

也可以在工程中选择右键选择编译

图 4-14编译工程

5.2.7. 配置调试工具

在配置调试信息前需要先将我们的板子通过stlink与电脑连接起来,

选择bug小虫子旁边的三角符号,然后选择Debug Configurations 进入debug配置项

图 4-15配置下载调试工具

或者直接从菜单栏中的run选择Debug Configurations 进入debug配置项

图 4-16配置下载调试工具

进入Debug Configurations之后,双击STM32 Cortex-M C/C++ Application,会自动生成00Newproject_CM4 Debug文件, 选择调试器按照图下的配置进行设置,最后点击Debug。

图 4-18

弹出以下界面选择switch进入调试界面

图 4-19

5.3. 下载验证

进入Debug界面后点击,运行,可看到板子上的LED会周期闪烁。

图 4-20

本章节的内容主要在于使用STM32CubeIDE创建工程以及下载到板子中,对于GPIO相关的内容将在后面的章节中介绍。