用CubeMX创建Keil工程

后续我们都将会使用CubeMX的框架,使用HAL库进行开发学习~

1. 使用CubeMX

  1. 选择MCU型号, 这里选择FryPi炸鸡派STM32开发板所使用的STM32F411RET6, 然后点击Start Project进入工程设置.

  2. 设置RCC. 这里FryPi炸鸡派开发板的外设是有外部晶振的,所以高速和低速CLK都使用外部晶振作为源.

  3. 设置SYS. debug使用SW, 启用后PA13和PA14会亮绿, 然后timebase使用Systick, 但如果使用了RTOS, 这里就建议换成其它的, 这个后续再说。

  4. 接着我们试下点灯, 使用GPIO, 可以看到LED测试的灯连接在PC13上,所以我们设置GPIO PC13为输出,然后等等测试点灯。

  5. 设置Clock Config, 可参考下图设置, 由原理图可知, 外部高速晶振接的25MHz,低速为32.768kHz. 按照填好, 然后设置分屏器, 使用PLL锁相环, 设置HCLK和SYSCLK为100MHz, 拉到最大.

  6. 设置Project Manager, 可参考下图设置, 设置好导出路径, 设置好工程使用MDK, 然后点击右上角GNERATE CODE生成工程即可. 可以设置独立的.c/.h以保证项目的清爽,不会全部放在一起.

2. CubeMX模板工程介绍

2.1. 生成的结构

标准CubeMX生成的文件有下面这些, Core主要为生成的main和gpio设置和中断函数等相关的内容, HAL_Driver为移植过来的HAL库,大家可以拿到工程继续摸索。

2.2. 生成代码的具体内容

打开keil工程,可以发现里面很多注释,USER CODE BEGIN什么的,这个他是为了用于让用户在BEGINEND之间加自己的代码,然后写完代码再次使用CubeMX生成代码,就不会被覆盖,确实注释有点多,而且再次生成代码会有可能让项目混乱。

所以强烈建议,使用CubeMX生成工程和初始化代码,一次性搞定!!!

2.3. 框架中修改代码

照顾到规范,我们在BEGINEND之间,添加上GPIO置1和置0,然后添加上delay函数延时,编译烧录测试,这样就实现了LED灯的翻转了~ 是不是很便捷呢~~

然后具体的代码细节我们在下一个GPIO章节专门来讲,视频中也会再次细讲。

Copyright © 油炸鸡开源硬件 | 渝ICP备2024035140号-2 | all right reserved,powered by Gitbook更新时间: 2025-06-07 09:45:17

results matching ""

    No results matching ""