- `HAL_GPIO_Init()`:GPIO初始化函数,用于配置GPIO的引脚模式、输出类型、速度以及上拉/下拉等参数。 - `HAL_GPIO_WritePin()`:GPIO输出控制函数,用于设置特定引脚的输出电平。 - `HAL_GPIO_ReadPin()`:GPIO输入读取函数,用于读取特定引脚的输入电平。 以下是一个简单的GPIO示例代码,将PA0引脚配置为输出模式,...
HAL_GPIO_Init()函数 该函数的作用是根据GPIO_Init中指定的参数初始化GPIOx外设。 由于是对管脚进行初始化定义,一般在mian()函数初始化中。 而在主程序的初始化中,有个注释是初始化所有配置的外设,点击查看这个函数。 在MX_GPIO_Init()可以看到,这里对管脚进行了初始化的配置。 HAL_GPIO_DeInit()函数 该函数...
GPIO_InitTypeDef*GPIO_Init);//复位函数voidHAL_GPIO_DeInit(GPIO_TypeDef*GPIOx,uint32_t GPIO_Pin);//读取引脚状态函数GPIO_PinStateHAL_GPIO_ReadPin(GPIO_TypeDef*GPIOx,uint16_t GPIO_Pin);//写引脚函数voidHAL_GPIO_WritePin(GPIO_TypeDef*GPIOx,uint...
__HAL_RCC_GPIOB_CLK_ENABLE(); // 根据名字,这是使能B端口 GPIO_Initure.Pin=GPIO_PIN_0;// 0口GPIO_Initure.Mode=GPIO_MODE_OUTPUT_PP; // 推挽输出 GPIO_Initure.Pull=GPIO_PULLUP; // 上拉 GPIO_Initure.Speed=GPIO_SPEED_HIGH; // 高速 HAL_GPIO_Init(GPIOB,&GPIO_Initure); // 调用...
HAL_GPIO_Init(GPIOA,&GPIO_InitStruct); HAL_NVIC_SetPriority(USART1_IRQn,0,1); HAL_NVIC_EnableIRQ(USART1_IRQn); } 从代码可以功能:配置io口,刚才的初始化串口函数,只是配置了串口的波特率、数据位等等,但是还没有配置串口所在的引脚,在这里配置,注释很清楚,A9 A10是这个川口的T和R,然后配置速度、复用...
voidMX_GPIO_Init(void){GPIO_InitTypeDef GPIO_InitStruct = {0}; 这里定义了一个名为 MX_GPIO_Init 的函数,没有输入参数,也没有返回值。同时创建了一个 GPIO_InitTypeDef 类型的结构体变量 GPIO_InitStruct 并初始化为零。 __HAL_RCC_GPIOD_CLK_...
void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin); 函数解析: 该函数是承接HAL_GPIO_Init函数的,将初始化之后的引脚恢复成默认的状态,即各个寄存器复位时的值。 形参解析: 一共两名形参,该形参的具体功能如下: GPIO_TypeDef *GPIOx:该形参是对GPIO的类型的定义,比如:GPIOA,GPIOC等等。
串口初始化另一个重要的函数就是HAL_UART_MspInit;我们在uart_init中配置好参数就可以看到开始调用HAL_UART_MspInit。整个调用逻辑如下图: 这部分逻辑很清晰的调用初始化过程。只有在填写HAL_GPIO_Init第一个参数的时候,我反面迷糊了,GPIO有那么多,我是选择GPIOA~E中的哪一个呢? 后来看了原理图才明白,如下: ...
这个函数在STM32的HAL库中定义,通常用于初始化GPIO引脚以供外部设备使用。 函数详解如下: 函数原型: ```c void GPIO_Init(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_InitTypeDef* GPIO_InitStruct); ``` 参数说明: *`GPIOx`:GPIO端口对象,例如GPIOA。 * `GPIO_Pin`:要初始化的引脚编号,通常为0-...
初始化GPIO目标引脚为推挽输出模式; 编写简单测试程序,控制GPIO引脚输出高、低电平。 13.2.3.下载验证¶ 把编译好的程序下载到开发板并复位,可看到RGB彩灯轮流显示不同的颜色。 13.3.STM32 HAL库补充知识¶ 13.3.1.SystemInit函数去哪了?¶ 在前几章我们自己建工程的时候需要定义一个SystemInit空函数,但是...