以下是STM32 GPIO端口的八种工作模式的详细解释和代码示例。 一、输入模式 1. 浮空输入(GPIO_Mode_IN_FLOATING) 在这种模式下,GPIO端口不连接任何内部上拉或下拉电阻,其电平状态完全取决于外部电路。这种模式通常用于读取外部开关或传感器的状态。 代码示例: GPIO_InitTypeDef GPIO_InitStruct; RCC_AHB1PeriphClock...
//GPIO的初始化函数voidGPIO_DeInit(GPIO_TypeDef*GPIOx);//将外设 GPIOx 寄存器重设为缺省值voidGPIO_AFIODeInit(void);//将复用功能(重映射事件控制和 EXTI 设置)重设为缺省值voidGPIO_Init(GPIO_TypeDef*GPIOx,GPIO_InitTypeDef*GPIO_InitStruct);//处初始化IO端口引脚功能voidGPIO_StructInit(GPIO_InitTypeDef*...
voidMX_GPIO_Init(void){GPIO_InitTypeDef GPIO_InitStruct = {0}; 这里定义了一个名为 MX_GPIO_Init 的函数,没有输入参数,也没有返回值。同时创建了一个 GPIO_InitTypeDef 类型的结构体变量 GPIO_InitStruct 并初始化为零。 __HAL_RCC_GPIOD_CLK_E...
模式GPIO_Mode: GPIO_Mode_IN_FLOATING,浮空输入。 使用方式:将一个结构体设置为默认值: // 定义一个GPIO_InitTypeDef类型的结构体变量gpio_init_structure GPIO_InitTypeDef gpio_init_structure; // 使用GPIO_StructInit()函数对gpio_init_structure结构体进行初始化 GPIO_StructInit(&gpio_init_structure); 将该...
(1)、void GPIO_DeInit(GPIO_TypeDefGPIOx);* 作用:将GPIO端口设置成初始的默认状态,相当于复位GPIO端口,默认的状态为输入浮空的状态。 举例:GPIO_DeInit(GPIOA),将GPIOA端口所有引脚复位到默认状态。 (2)、void GPIO_Init(GPIO_TypeDefGPIOx, GPIO_InitTypeDefGPIO_InitStruct);** ...
1 void GPIO_Init(GPIO_TypeDef*GPIOx, GPIO_InitTypeDef*GPIO_InitStruct); 功能描述: 根据GPIO_InitStruct中指定的参数初始化外设GPIOx寄存器 输入参数1:GPIOx//GPIOx:x 可以是 A,B,C,D 或者 E,来选择 GPIO 外设 输入参数2:GPIO_InitStruct//GPIO_InitStruct:指向结构 GPIO_InitTypeDef 的指针,包含了外设...
GPIO_InitTypeDef 类型的结构体 typedef struct{ uint32_tPin; /*!<指定要配置的GPIO引脚。该参数可以是@ref GPIO_pins_define 的任意值 */ uint32_t Mode; /*!<指定所选引脚的工作模式。该参数可以是@ref GPIO_mode_define 的值 */ uint32_t Pull; /*!< 指定所选引脚的上拉或下拉激活。该参数...
GPIO是STM32微控制器上的一组引脚,可配置为输入或输出模式,用于与外部设备进行数字信号交换。每个GPIO引脚都有一个唯一的编号,通常称为引脚名称或引脚号码。 STM32系列微控制器通常具有多个GPIO引脚,数量取决于具体型号。 GPIO模块是STM32微控制器中非常重要的功能之一,它允许微控制器与外部设备进行数字信号交换。通过...
GPIO_InitTypeDef GPIO_InitStructure; 步骤二为变量GPIO_InitStructure的成员赋值,如果只设置其中的一部分成员,我们需要如下代码: /** *1->PC6,LED2->PC7,LED3->PC9 */ GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_9; GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; ...
//1. 初始化GPIO的时钟 RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE); //2. 初始化GPIO GPIO_Init(GPIOF, &gpio_InitTypeDef); //3. 设置低电平 //GPIO_ResetBits(GPIOF, GPIO_Pin_9 | GPIO_Pin_10); return 0; } 1. 2. ...