STM32 GPIO工作原理

在这里插入图片描述来源:正点原子
输入
下面不起作用
1.输入浮空模式
2.输入上拉模式
3.输入下拉模式
4.模拟输入(AD)模拟量输入
输出
下面起作用
1.开漏输出模式
2.开漏复用输出模式
3.推挽输出模式
4.推挽复用输出
推挽输出:可以输出强高低电平,连接数字器件
开漏输出:只可输出强低电平,高电平得靠外部电阻拉高
每组GPIO端口的寄存器:
4个 32位配置寄存器:
一个端口模式寄存器(GPIOx_MODER)
一个端口输出类型寄存器(GPIOx_OTYPER)
一个端口输出速度寄存器(GPIOx_OSPEEDR)
一个端口上拉下拉寄存器(GPIOx_PUPDR)一
2个32位数据寄存器:
一个端口输入数据寄存器(GPIOx_IDR)
一个端口输出数据寄存器(GPIOx_ODR)
一个端口置位/复位寄存器(GPIOx_BSRR)
一个端口配置锁存寄存器(GPIOx_LCKR)
两个复位功能寄存器(低位GPIOx_AFRL& GPIOx_AFRH)
1.端口模式寄存器(GPIOx_MODER)
00:输入(复位状态)
01:通用输出模式
10:复用功能模式
11:模拟模式
2. 端口输出类型寄存器(GPIOx_OTYPER)
0:输出推挽(复位状态)
1:输出开漏
3. 端口输出速度寄存器(GPIOx_OSPEEDR)
00: 2 MHz (低速)
01: 25 MHz (中速)
10: 50 MHz (快速)
11:30pF时为100MHz(高速)(15pF时为80MHz输出(最大速度))
4. 端口上拉下拉寄存器(GPIOx_PUPDR)
00:无上拉或下拉
01:上拉
10:下拉
11:保留
5.端口输入数据寄存器(GPIOx_IDR)
6.端口置位/复位寄存器(GPIOx_BSRR)

猜你喜欢

转载自blog.csdn.net/cherry12100511/article/details/105211142