可以读IO输入电平变化,实现C51的IO双向功能 (6)推挽输出_OUT_PP ——IO输出0-接GND, IO输出1 -接VCC,读输入值是未知的 (7)复用功能的推挽输出 _AF_PP ——片内外设功能(I2C的SCL,SDA) (8)复用功能的开漏输出 _AF_OD ——片内外设功能 (TX1,MOSI,MISO.SCK.SS) STM32设置实例: (1)模拟I2
7、GPIO_Mode_AF_OD 复用开漏输出 当有多个不同的模块对应同一个引脚时,那这个GPIO就要使用复用功能,其他方面与开漏输出相同。即如果用在IC、SMBUS这些需要线与功能的复用场合,就使用复用开漏模式。 主要应用:片内外设功能(TX1、MOSI、MISO.SCK.SS) 8、GPIO_Mode...
< 输入模式 */#define GPIO_MODE_OUTPUT_PP 0x00000001u /*!< 推挽输出模式 */#define GPIO_MODE_OUTPUT_OD 0x00000011u /*!< 开漏输出模式 */#define GPIO_MODE_AF_PP 0x00000002u /*!< 复用推挽输出模式 */#define GPIO_MODE_AF_OD 0x00000012u /*!< 复用开漏输出模式 */#define GPIO_MODE_AF...
推挽的挽,可以想象成挽留,既然要挽留,那就要拉出人家的胳膊,推挽、推拉、push-pull、简写就是PP)(2)开漏输出GPIO_Mode_Out_OD(out open drain,drain有流水、流失、漏之意,所以open drain就是开漏的意思,简写成OD)(3)复用推挽输出GPIO_AF_PP(alternate function open push—pull)(4)复用开漏输出GPIO_AF_OD...
-推挽式复用功能(GPIO_Mode_AF_PP) 输入浮空:浮空就是逻辑器件与引脚即不接高电平,也不接低电平。由于逻辑器件的内部结构,当它输入引脚悬空时,相当于该引脚接了高电平。一般实际运用时,引脚不建议悬空,易受干扰。通俗讲就是浮空就是浮在空中,就相当于此端口在默认情况下什么都不接,呈高阻态,这种设置在数据传...
8、复用推挽输出GPIO_Mode_AF_PP 其他复用比如 SPI 等可以选择复用推挽输出。 什么是推挽结构和推挽电路? 推挽结构一般是指两个参数相同的三极管或MOS管分别受两互补信号的控制,总是在一个三极管或MOS管导通的时候另一个截止。高低电平由输出电平决定。
这两个都是推挽输出模式,AF_PP是由片上外设来控制,OUT_PP由ODR寄存器控制。推挽输出是最基本的输出...
复用推挽输出(AF Push-Pull Output):复用推挽输出模式允许将GPIO引脚用作特定外设功能。在该模式下,引脚可以输出高电平或低电平,并具有一定的驱动能力。 // 初始化复用推挽输出模式的GPIOGPIO_InitStruct.Pin = GPIO_PIN_0; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;// 复用推挽输出模式GPIO_InitStruct.Pull ...
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOB, &GPIO_InitStructure); /* Configure USART1 Rx (PA.10) as input floating */ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7; ...
GPIO_Mode_Out_PP = 0x10, GPIO_Mode_AF_OD = 0x1C, GPIO_Mode_AF_PP = 0x18 }GPIOMode_TypeDef; 对于上面的八种工作模式,为什么被这样赋值呢? 原因是 (1)这个是固件库为了写代码方便赋值的;(2)他在GPIO_Init初始化的里面进行运算,得出要赋值寄存器相应的位。