观前提醒:本文详尽分析了HAL库中GPIO配置的相关函数,包括MX_GPIO_Init()、HAL_GPIO_WritePin()、HAL_GPIO_Init()。文末附f1系列GPIO口相关寄存器说明MX_GPIO_Init()先看源码:void MX_GPIO_Init(void){ GPIO_InitTypeDef GPIO_InitStruct = {0}; /* GPIO Ports Clock Enable */ __HAL_RCC_GPIOD_CLK_ENABLE(); __HAL_RCC_GPIOC_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(LED4_GPIO_Port, LED4_Pin, GPIO_PIN_SET); /*Configure GPIO pin : PtPin */ GPIO_InitStruct.Pin = LED4_Pin; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(LED4_GPIO_Port, &GPIO_InitStruct);}下面我们来逐行分析代码void MX_GPIO_Init(void){ GPIO_InitTypeDef GPIO_InitStruct = {0};这里定义了一个名为 MX_GPIO_Init 的函数,没有输入参数,也没有返回值。同时创建了一个 GPIO_InitTypeDef 类型
………………………………