uint8_t inputState = HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0); // 读取引脚状态 ``` 在以上代码示例中,首先使用 `__HAL_RCC_GPIOA_CLK_ENABLE()` 函数启用GPIOA引脚的时钟。然后,通过配置 `GPIO_InitStruct` 结构体中的引脚、模式和上下拉等参数,将GPIO引脚配置为输入模式,上拉。最后,使用 `HAL_GPIO_...
函数名称:GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin); 第一个参数:GPIOA,B,C,D…(取决于单片机型号) 第二个参数:可以取GPIO_PIN_0~GPIO_PIN_15 返回值:返回"0",对应引脚为低电平,返回"1",对应引脚为高电平。 例: uint8_tpinstate =0; pinstate =HAL_GPIO_ReadPin...
- `HAL_GPIO_Init()`:GPIO初始化函数,用于配置GPIO的引脚模式、输出类型、速度以及上拉/下拉等参数。 - `HAL_GPIO_WritePin()`:GPIO输出控制函数,用于设置特定引脚的输出电平。 - `HAL_GPIO_ReadPin()`:GPIO输入读取函数,用于读取特定引脚的输入电平。 以下是一个简单的GPIO示例代码,将PA0引脚配置为输出模式,...
调用函数:调用初始化函数HAL_GPIO_Init将配置参数写入到对应的寄存器,入口参数为端口号和结构体变量。 6.3 GPIO 外设接口函数的概述 引脚初始化函数:HAL_GPIO_Init 引脚复位函数:HAL_GPIO_DeInit 读取引脚函数:HAL_GPIO_ReadPin 写入引脚函数:HAL_GPIO_WritePin 翻转引脚函数:HAL_GPIO_TogglePin 任务实践 基于STM32F10...
HAL_GPIO_ReadPin()函数 该函数的作用是读取管脚的电平状态。 通过简单的按键按下亮灯,松开灭灯进行演示,代码如下。 if(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_13) ) HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_SET);else HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_RESET);HAL_Delay(10);...
returnKEY_1;}#endif#ifdef KEY2_Pinif(HAL_GPIO_ReadPin(KEY2_GPIO_Port,KEY2_Pin)==GPIO_PIN_...
GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;// 设置为中断模式,当电平上升时触发中断 GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);// 初始化GPIOA的管脚0 while(1) { if(HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0) == GPIO_PIN_SET)// 如果管脚电平为高 { // ...
HAL_GPIO_ReadPin()函数 该函数的作用是读取管脚的电平状态。 通过简单的按键按下亮灯,松开灭灯进行演示,代码如下。 if(HAL_GPIO_ReadPin ( GPIOC, GPIO_PIN_13) ) HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_SET);elseHAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_RESET); ...
1. GPIO的基本结构 1.1 通用输入与输出GPIO GPIO(General Purpose Input Output)意思是通用输入输出口可配置为8种输入输出模式,其引脚电平:0V~3.3V,部分引脚可容忍5V(容忍5V的意思是可以在这个端口输入5V,相当于输入一个高电平,而输出一直都是3.3V不变)。IO口引脚定义图里面在IO口电平这一栏标注FT的就是可以容...
我们现在需要按键检测,这是检测GPIO输入,还是同样的我们需要先去设置GPIO 这个在上面的基础上就可以继续编辑。 首先查阅原理图,可以发现按键分别是PA0和PC13,我们把PA0和PC13配置为输入,然后生成工程。 我们打开工程,在主函数的while里面添加下面代码: if(HAL_GPIO_ReadPin(key1_GPIO_Port,key1_Pin)==GPIO_PIN_...