同时创建了一个 GPIO_InitTypeDef 类型的结构体变量 GPIO_InitStruct 并初始化为零。 __HAL_RCC_GPIOD_CLK_ENABLE();__HAL_RCC_GPIOC_CLK_ENABLE();__HAL_RCC_GPIOA_CLK_ENABLE(); 通过调用 __HAL_RCC_GPIOD_CLK_ENABLE()、__HAL_RCC_GPIOC_...
void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init); 函数解析: 这个是GPIO的初始化的函数,这个函数主要用来初始化我们需要用到的引脚的工作模式,包括具体引脚的工作速度、是否复用模式、上下拉等等参数。 形参解析: 一共两名形参,该形参的具体功能如下: ...
void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init) HAL_GPIO_DeInit //将初始化之后的引脚恢复成默认的状态–各个寄存器复位时的值 void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin) 例:HAL_GPIO_DeInit(GPIOA, GPIO_PIN_9|GPIO_PIN_10); HAL_GPIO_ReadPin //读取...
void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin); 函数解析: 该函数是承接HAL_GPIO_Init函数的,将初始化之后的引脚恢复成默认的状态,即各个寄存器复位时的值。 形参解析: 一共两名形参,该形参的具体功能如下: GPIO_TypeDef *GPIOx:该形参是对GPIO的类型的定义,比如:GPIOA,GPIOC等等。 uint...
使用HAL_GPIO_Init()配置GPIO引脚 如果要配置外部中断功能,请先使用HAL_NVIC_SetPriority()配置 NVIC IRQ 优先级,再使用HAL_NVIC_EnableIRQ()开启 IRQ 使用HAL_GPIO_ReadPin()获取引脚的电平值 使用HAL_GPIO_WritePin()/HAL_GPIO_TogglePin()这两个函数来设置引脚的电平值 ...
HAL_GPIO_Init()是一个开源平台的函数调用,可以使用STM32系列芯片的HAL库来调用它。在调用此函数之前,需要先设置GPIO所使用的时钟,也就是在RCC(Reset and Clock Control)寄存器中配置相应的位。此外,在使用GPIO之前还需要设置GPIO模式、输出模式、输入模式、上拉/下拉模式等。HAL_GPIO_Init()经过...
在KEY.h文件中先是用两个宏定义,定义了按键的GPIO引脚(6-7行),PC13,又声明了一个按键初始化函数(9行)。 LED.h中也是类似,定义了每个LED的GPIO引脚,声明了三个函数,分别用于初始化LED(LED_Init())、点亮LED(LED_On())、熄灭LED(LED_Off())。另外6-12行定义了一个枚举类型LEDSelection_TypeDef,这个类型...
输入模式相关的GPIOAPI也比较少,只涉及到 关于GPIO操作的API: 代码语言:javascript 代码运行次数:0 运行 AI代码解释 /* Initialization and de-initialization functions ***/voidHAL_GPIO_Init(GPIO_TypeDef*GPIOx,GPIO_InitTypeDef*GPIO_Init);voidHAL_GPIO_DeInit(GPIO_TypeDef*GPIOx,uint32_t GPIO_Pin);/**...
GPIO_InitStructure.Pin = GPIO_PIN_0; HAL_GPIO_Init(GPIOA, &GPIO_InitStructure); } int main(void) { // 初始化HAL库 HAL_Init(); // 配置GPIO引脚 GPIO_Config(); while (1) { // 设置引脚为高电平 HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_SET); ...
static void MX_GPIO_Init(void) { GPIO_InitTypeDef GPIO_InitStruct = {0}; /* USER CODE BEGIN MX_GPIO_Init_1 */ /* USER CODE END MX_GPIO_Init_1 */ /* GPIO Ports Clock Enable */ __HAL_RCC_GPIOC_CLK_ENABLE(); /*Configure GPIO pin Output Level */ ...