I/O口

1.0 关于I/O  口

发现在Cortex-M3里,对于GPIO的配置种类有8种之多:

(1)GPIO_Mode_AIN 模拟输入                            //一般用用ad输入
(2)GPIO_Mode_IN_FLOATING 浮空输入        
(3)GPIO_Mode_IPD 下拉输入
(4)GPIO_Mode_IPU 上拉输入
(5)GPIO_Mode_Out_OD 开漏输出          
(6)GPIO_Mode_Out_PP 推挽输出
(7)GPIO_Mode_AF_OD 复用开漏输出
(8)GPIO_Mode_AF_PP 复用推挽输出

 

2、关于上下拉

上拉就是将不确定的信号通过一个电阻嵌位在高电平!电阻同时起限流作用!下拉同理!

上拉和下拉电阻的作用就是:1、使IO口的电平稳定在高或低电平,2、为了增加IO口拉流的能力

上拉是对器件注入电流,下拉是输出电流

上拉电阻R pull-up的阻值决定了逻辑电平转换的沿的速度。阻值越大,速度越低功耗越小。反之亦然.一般1~10K阻值选择。

 

3.0 关于推挽与开漏

 

 

                          开漏                                                                                        推挽

 

 

推挽输出:既可以向负载灌电流,也可以从负载抽取电流.​

开漏输出:完整的开漏电路应由开漏器件和开漏上拉电阻组成。这里的上拉电阻R的阻值决定了逻辑电平转换的上升/下降沿的速度。阻值越大,速度越低,功耗越小。因此在选择上拉电阻时要兼顾功耗和速度。标准的开漏脚一般只有输出的能力。添加其它的判断电路,才能具备双向输入、输出的能力。​

 

特点总结

开漏输出:实现电平转换,实现”线与“逻辑(I2C等接口总线应用中),利用外电路提高驱动能力,利用上拉电阻提供高电平,显然,没有上拉电阻只能输出低电平。

推挽输出:可以吸电流也可以灌电流,相对于开漏,输出电平取决于IC电源。然而,一条总线上只能有一个推挽输出期间。

如果你想要电平转换速度快的话,那么就选push-pull,但是缺点是功耗相对会大些。

如果你想要功耗低,且同时具有“线与”的功能,那么就用open-drain的模式。

用途

根据开漏输出和推挽输出的特点,可以很容易判断在以下应用中应当工作在推挽输出模式(或者复用推挽输出):

驱动应用中,驱动LED、蜂鸣器等

USART_TX、USART_CK、USART_RTS、MOSI、SPI主模式SCK、CAN_TX等需要较强驱动能力的场合

而在I2C等接口总线应用中,由于需要“线与”判断总线占用状态,以及需要使用电平转换的场合需要将I/O配置成开漏输出的模式。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值