前言
本文记录下我学习STM32CubeMX时的流程,方便以后回忆。本章记录,时钟配置,生成配置,以及点亮LED,调试模式,也能让第一次了解软件的该配置一些什么东西。
目录
- 时钟配置
- 生成配置
- 点亮LED
- 调试模式
时钟配置
工程开始新建时,是默认禁用外部高速时钟(HSE)和外部低速时钟(LSE)的,默认用内部高速时钟(HSI),这样的话,可以从Clock Configuration(时钟配置)看到,工作主频最高只能调到64MHz。
-
找到RCC,启用外部高速时钟(HSE)
-
去时钟配置中调整,要注意选择路线,最后主频(HCLK)调到72MHz
生成配置
在工程代码生成前,可以按照个人喜好配置。我是要在keil中可以打开,就可以配置如下。
-
项目配置
-
代码生成器配置
-
配置完后,生成代码
点亮LED
点灯流程:在芯片框图中左键单点击引脚,选择端口模式。生成代码,keil中打开。
-
在芯片框图中左键单点击指定引脚,并选择端口模式。
-
在生成好文件后,在keil中打开,在主函数下写下一行端口赋值。至于端口初始化函数,在上面已经自动调用了。
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);
stm32f1xx_hal_gpio.h文件中,IO操作相关函数。在233行位置处。
/* IO operation functions *****************************************************/ GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState); void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin); void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin);
调试模式
在SYS中,配置
Debug
为Serial Wire
,不要默认的No Debug
值,假如是用ST-LINK调试的话,下载一次后,就会禁用下载口了,在下载就会报错了。