GPIO_ReadInputData读的是GPIOx的整个IDR寄存器的数据,返回一个十六位数,对应IDR寄存器的十六位。反映GPIOx所有端口的电平状态,所以参数只用传入GPIOx。 uint16_tGPIO_ReadInputData(GPIO_TypeDef* GPIOx); GPIO_ReadInputDataBit读的是GPIOx的IDR寄存器中的一位数,返回值不是0就是1。反映GPIOx的某个端口的电平状态,...
GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_1);//读取PA1的输入电平 uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx); //读取某个端口16位的输入数据(GPIOx) GPIO_ReadInputData(GPIOA);//读取PA端口16位的输入数据 3.读取输出电平函数 uint8_t GPIO_ReadOutputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_...
2、函数GPIO_ReadInputData /* 函数名:GPIO_ReadInputData 函数原型:u16 GPIO_ReadInputData(GPIO_TypeDef * GPIOx) 功能描述:读取指定的GPIO端口输入输入参数1:GPIOx *---* 用来选择GPIO外设,x取: A B C D E *---* 输出参数:无返回值:GPIO输入数据端口值先决条件:无被调用函数:无 */ //例子 u16 val;...
uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx);读取当前所有端口电平 uint8_tGPIO_ReadOutputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);读取整个当前端口输出数据返回值 uint16_t GPIO_ReadOutputData(GPIO_TypeDef* GPIOx);读取当前端口输出数据返回值...
下拉输入:接入下拉电阻,与地接通,所以默认状态下读到的GPIO引脚电平为低电平,即为0 浮空输入:既不接上拉也不接下拉,所以输入的是高电平就是高电平,低电平就是低电平 在输入模式下可以通过ODR寄存器相对应的位来确定具体是上拉还是下拉,0是下拉,1是上拉。
第二个函数GPIO_ReadInputData则是用来读取整个数据输入寄存器的。其函数原型如下:uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx);这个函数仅接受一个参数,即指向GPIO端口的指针GPIOx。它返回一个16位的数据,每一位都代表一个端口的输入值。第三个函数GPIO_ReadOutputDataBit,虽然其名称中包含“输出数据”,但...
//GPIO_Pin在stm32f10x_gpio.h宏定义,GPIO_Pin_0-15 //读GPIO口位状态 GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) //读GPIO口组状态 GPIO_ReadInputData(GPIO_TypeDef* GPIOx) //将GPIO口位状态置零 GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) ...
state = GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_12); 2、GPIO_ReadInputData函数 该函数也可以读取指定引脚的电平。 函数原型:u16 GPIO_ReadInputData(GPIO_TypeDef* GPIOx) 参数GPIOx为指定GPIO组的指针,该函数返回一个u16类型的值,返回值的每一位代表一个引脚对应的电平,当电平为低时,返回值为0;当电平为高时...
GPIO_Init 根据GPIO_InitStruct中指定的参数初始化外设GPIOx寄存器 GPIO_StructInit 把GPIO_InitStruct中的每一个参数按缺省值填入 GPIO_ReadInputDataBit 读取指定端口管脚的输入 GPIO_ReadInputData 读取指定的GPIO端口输入 GPIO_ReadOutputDataBit 读取指定端口管脚的输出 ...
该函数接受两个参数:一个是指向GPIO外围设备的指针(如GPIOA、GPIOB等),另一个是要读取的引脚编号(如GPIO_Pin_GPIO_Pin_1等)。函数返回输入端口引脚的值,例如,我们可以使用GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_5)来读取GPIOA.5的输入电平。此外,还有GPIO_ReadInputData函数,它允许我们一次性读取多个GPI...