STM32输入输出管脚的配置

转:http://www.51hei.com/bbs/dpj-40309-1.html
TM32的管脚主要有8中可能的配置:

浮空输入_IN_FLOATING
带上拉输入_IPU
带下拉输入_IPD
模拟输入_AIN
开漏输出_OUT_OD
推挽输出_OUT_PP
复用功能的推挽输出_AF_PP
复用功能的开漏输出_AF_OD

在IO模式下,有三种速度,分别为:2MHz,10Mhz,50Mhz,
此速度是指IO口驱动电路的响应速度而不是输出信号的速度,输出信号的速度与程序有关

通过选择速度来选择不同的输出驱动模块,达到最佳的噪声控制和降低功耗的目的
一般高频驱动电路,噪声也高,当不需要高的输出频率时,请选用低频驱动电路这样有助于提高系统的EMI性能
当然,如果要输出较高频率的信号,选择低频驱动模块很可能会得到失真的信号

关键是GPIO的引脚速度与和应用匹配
对于串口,如果最大波特率只需115200,那么2M的GPIO引脚速度就够了,既省电又降噪
对于I2C,假设使用400K波特率,若想把余量留大些,那么用2M的或许不够,此时可选择10M
对于SPI,假设使用18M或者9M波特率,用10M明显不够,此时可选择50M的GPIO引脚速度

GPIO口味输入时,驱动电路与端口断开,苏初速度配置无意义
在复位期间和刚复位后,复位功能未开启,IO端口被配制成浮空输入模式
所有端口均有外部中断能力,为了使用外部中断线,端口必须配置成输入模式

STM32中外设的输入输出功能的三种情况:
外设对应管脚为输出:可根据外围电路的配置选择对应管脚为复用功能的推完输出或者复用功能的开漏输出
外设对应管脚为输入:可根据外围电路的配置选择对应管脚为浮空输入或者带上拉输入或者带下拉输入
ADC对应的管脚:配置管脚为模拟输入
如果把端口配置成复用输出功能,则引脚和输出寄存器断开,并和片上外设的输出信号连接
管脚配置成复用功能后,让国外设没有被激活,那么它的输出将不确定!

你可能感兴趣的:(STM32输入输出管脚的配置)