1. HAL_GPIO_ReadPin():读取GPIO引脚的状态,返回值为GPIO_PIN_RESET或GPIO_PIN_SET。 2. HAL_GPIO_WritePin():设置GPIO引脚的状态,参数为GPIO_PinState类型,可以设置为GPIO_PIN_RESET或GPIO_PIN_SET。 3. HAL_GPIO_TogglePin():反转GPIO引脚的状态。 4. HAL_GPIO_ReadPort():读取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 //读取...
pinstate =HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0); 3.GPIO引脚翻转函数 函数名称:void HAL_GPIO_TogglePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin); 函数功能:若引脚为低电平,则变为高电平;若为高电平,则变为低电平。 第一个参数:GPIOA,B,C,D…(取决于单片机型号) 第二个参数:可以取GPIO_PIN_0~...
GPIO_Pin:指定要写入的端口位;此参数可以是GPIO_Pin_x的任意组合,其中x可以是(0..15)。 ***/ IO 口操作相关 3、读取指定GPIO的值 GPIO_PinStateHAL_GPIO_ReadPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) /*** 参数定义: GPIOx:其中x可以是(A..H),用于选择STM32L4系列的GPIO外设 GPIO_Pin:指定...
HAL_GPIO_ReadPin:读取引脚电平 HAL_GPIO_WritePin:写入引脚电平 HAL_GPIO_TogglePin:翻转引脚电平 HAL_GPIO_LockPin:所以引脚当前电平,将无法改变 HAL_GPIO_EXTI_IRQHandler:引脚的中断服务函数 HAL_GPIO_EXTI_Callback:引脚的中断回调函数*/ GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO...
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); } 1. 2. 3. 4. 5. 6. 7. 8. 9. 按键的输入、消抖与松手检测 按键检测可以调用库函数HAL_GPIO_ReadPin,也可以使用位带操作PAin(n)。其实,只需要一步跳转,就可以发现HAL_GPIO_ReadPin其实也是在调用IDR寄存器而已。
这通常通过调用HAL_GPIO_ReadPin()函数来实现。 c // 读取PA0引脚的电平状态 GPIO_PinState pinState = HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0); // 判断引脚状态是高电平还是低电平 if (pinState == GPIO_PIN_SET) { // 引脚为高电平 } else { // 引脚为低电平 } 4. 处理或输出读取到的电平值...
if(HAL_GPIO_ReadPin(Button_GPIO_PORT,Button_PIN)==GPIO_PIN_SET){ //按钮被按下 }else{ //按钮未被按下 } ``` 04 中断控制 通过HAL库可以方便地配置GPIO中断,并实现相应的中断处理函数。以下是一个简单的中断配置的例子: 4.1初始化中断 ```c ...
if(HAL_GPIO_ReadPin(GPIOB,KEY1_Pin)==GPIO_PIN_RESET){//判断PB15引脚是否为低电平 HAL_GPIO_...