GPIO_ReadInputData读的是GPIOx的整个IDR寄存器的数据,返回一个十六位数,对应IDR寄存器的十六位。反映GPIOx所有端口的电平状态,所以参数只用传入GPIOx。 uint16_tGPIO_ReadInputData(GPIO_TypeDef* GPIOx); GPIO_ReadInputDataBit读的是GPIOx的IDR寄存器中的一位数,返回值不是0就是1。反映GPIOx的某个端口的电平状态,读...
GPIOx:指定GPIO端口,可以是GPIOA、GPIOB等(视具体芯片而定)。 GPIO_InitStruct:指向GPIO_InitTypeDef结构体的指针,该结构体定义了引脚的初始化设置。 读取引脚状态: 使用GPIO_ReadInputDataBit()函数读取引脚的状态,以获取外部信号的当前状态。 参数说明 GPIOx:指定GPIO端口,可以是GPIOA、GPIOB等(具体端口视芯片不同...
1、函数GPIO_ReadInputDataBit /* 函数名:GPIO_ReadInputDataBit 函数原型:u8 GPIO_ReadInputDataBit(GPIO_TypeDef * GPIOx,u16 GPIO_Pin) 功能描述:读取指定端口引脚的输入输入参数1:GPIOx *---* 用来选择GPIO外设,x取: A B C D E *---* 输入参数2:GPIO_Pin *---* 待设置的端口位,等同于GPIO_Pin_x ...
uint32_t pinPosition = GPIO_PIN_x; // 替换x为你要读取的引脚位置,如GPIO_PIN_0表示第一个引脚 uint32_t port = GPIOx; // 替换x为你要读取的GPIO端口,如GPIOA inputValue = stm32gpio_readinputdatabit; // 调用函数读取引脚状态 在此示例中,`inputValue`将存储所读取的引脚状态,根据...
一.GPIO的寄存器 32位配置寄存器:GPIOx_CRL,GPIOx_CRH 32位数据寄存器:GPIOx_IDR,GPIOx_ODR 32位置位/复位寄存器:GPIOx_BSRR 16位复位寄存器:GPIOx_BRR 32位锁定寄存器:GPIOx_LCKR GPIOx_CRL :端口配置低寄存器 (控制P0--P7端口) 一个IO位占4个位(4*8=32)P0--P7刚好32位,例如:P0端口:0-1控制输入...
在STM32中,获取GPIO状态通常是通过调用相应的库函数来实现的。以下是如何获取GPIO状态的详细步骤: 查找STM32的GPIO库函数: STM32的标准外设库(Standard Peripheral Library)或硬件抽象层(HAL)库提供了丰富的函数来配置和控制GPIO。 确定用于读取GPIO状态的函数: 在标准外设库中,可以使用GPIO_ReadInputDataBit函数来读取单...
ReadValue = GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_8);GPIO口的基本配置方法 1)开启GPIO口的时钟。2)定义一个结构体,用于配置引脚、引脚传输速度以及引脚的工作模式。3)完成GPIO_Init的设置。4)根据需要输出高低电平。程序示例 /* 开启GPIOC的时钟 */RCC_APB2periphClockCmd(RCC_APB2periph_GPIOC, ENABLE...
STM32F4 的 IO口做输入使用的时候,是通过调用函数 GPIO_ReadInputDataBit()来读取 IO 口的状态的。 探索者 STM32F4 开发板上载有的 4 个按钮(KEY_UP、KEY0、KEY1 和 KEY2),来控制板上的 2 个 LED(DS0 和 DS1)和蜂鸣器,其中 KEY_UP 控制蜂鸣器,按一次叫,再按一次停;KEY0 控制 DS0,按一次亮,再按...
Key_Scan 函数中以GPIO_ReadInputDataBit 的返回值与自定义的宏“KEY_ON”对比,若检测到按键按下,则使用while 循环持续检测按键状态,直到按键释放,按键释放后Key_Scan 函数返回一个“KEY_ON”值;若没有检测到按键按下,则函数直接返回“KEY_OFF”。若按键的硬件没有做消抖处理,需要在这个Key_Scan 函数中做软件...
tGPIO_ReadInputDataBit(GPIO_TypeDef*GPIOx,uint16_tGPIO_Pin);//读取指定IO端口引脚输入值,读的是...