英文原文地址:

https://learn.sparkfun.com/tutorials/pull-up-resistors/introduction

介绍:

上拉电阻在使用微控制器(MCUs)或者其他数字逻辑器件的时候很常见。本教程会解释什么时候和什么地方会用到上拉电阻,然后我们会通过一个简单的计算来展示为什么上拉电阻很重要。

什么是上拉电阻

我们设想你有一个MCU,它有一个配置成输入的引脚。如果没有东西连接在该引脚上,并且你的程序要读这个引脚的状态,这个状态是高(拉到VCC)还是低(接地)?这很难说。这种情况叫做悬空。为了防止这种未知状态,就需要一个上拉或者下拉电阻来保证引脚处于高电平还是低电平状态,同时需要流过少部分电流。

简单起见,我们将把注意力放在上拉电阻上,因为它们比下拉电阻更常见。它们使用相同的概念,除了上拉电阻连接到高电平(通常3.3V或者5V,并且作为VCC),而下拉电阻连接到地。

上拉电阻经常和按键以及开关在一起使用。

通过使用上拉电阻,输入引脚将在按键按下时读到高电平。换句话说,VCC和输入引脚(不是和地)之间会有小电流流过,输入引脚读出的电压接近VCC。按键按下时,输入引脚直接接地。电流通过电阻流入地,输入引脚读出低电平。记住,如果这里没有这个电阻,你的按键将使VCC接地,这是很糟糕的,就是我们说的短路。

那么怎么选择电阻值呢?

简短的答案就是你需要一个近似10kΩ的电阻来上拉。

小电阻值叫做强上拉(更多电流),高电阻值叫做弱上拉(小电流)。

选择上拉电阻的阻值需要满足两个条件:

1、按键按下,引脚电平拉低。R1的阻值控制你希望VCC流出多少电流通过按键到地。

2、按键未按下,引脚电平拉高。上拉电阻控制引脚的电平。

对于条件1,你不希望电阻值过低。电阻值越低,按键按下的时候就会消耗更多的能量。一般你希望电阻值稍大一些(10KΩ),但是你不希望阻值过大,以免和条件2冲突。一个4MΩ的电阻可以作为上拉电阻,但是它的阻值太大(太弱)以至于不能在所有情况下正常工作。

条件2的一般规则是使用一个近似小于输入引脚阻抗(R2)1/10数量级的上拉电阻(R1)。微控制器的输入引脚阻抗范围在100K-1MΩ。这里,阻抗只是电阻值的另一种说法,在上图中用R2表示。因为,按键按下时,小电流就会从VCC流过R1进入引脚。上拉电阻R1和输入引脚阻抗R2分得电压,这个电压需要足够高来使得输入引脚读出高电平状态。

举个例子,如果你使用一个1MΩ的电阻来上拉,输入引脚阻抗约为1MΩ(构成一个分压器),输入引脚上的电压将是VCC的一半,微控制器引脚可能不是高电平状态。在一个5V系统中,MCU读出引脚状态电压是2.5V会是什么状况?是高还是低?MCU不知道结果,你可能读出高或者低状态。而10K到100KΩ可以避免大部分的问题。

既然上拉电阻需求这么广泛,很多MCU,比如Arduino平台上的ATmega328 微控制器,有可以开启和禁用的内部上拉电阻。启用Arduino的内部上拉电阻,你可以在你的setup函数中使用下面一行代码:

pinMode(5,INPUT_PULLUP); // Enable internal pull-up resistor on pin 5

需要指出的另外一点事上拉电阻阻值越大,引脚响应电压变化也就越慢。这是因为系统提供的引脚实际上是一个电容和一个上拉电阻的组合,因此组成一个RC滤波器,并且RC滤波器需要时间充电和放电。如果你有一个快速变化的信号(比如USB),高阻值上拉电阻可能限制引脚真实的状态转变速度。这就是为什么你经常看到USB信号线上电阻值为1K到4.7KΩ的原因。

所有这些因素都会影响决定使用多大的上拉电阻。

计算上拉电阻阻值

我们考虑你在上面的电路中按键按下时,希望限制电流到1mA左右。其中Vcc=5V,你需要使用多大的电阻。

使用欧姆定理很容易计算上拉电阻的阻值:

根据上面的电路图,欧姆定理公式变成:

整理上面的方程并求解电阻值:

记住在计算前将所有单位转换成伏特、安培和欧姆(比如1mA=0.001A),接出电阻为5KΩ

上拉电阻(Pull-upResistors)相关推荐

  1. 上拉(Pull Up )或下拉(Pull Down)电阻详解

    上拉(Pull Up )或下拉(Pull Down)电阻(两者统称为"拉电阻")最基本的作用是:将状态不确定的信号线通过一个电阻将其箝位至高电平(上拉)或低电平(下拉),无论它的具 ...

  2. i2c的IOL及上拉电阻

    1.拉电流与灌电流 拉电流(pull current)是指PAD输出为逻辑1时,对外提供的电流,相当于电流是被拉出,所以叫拉电流.灌电流(sink current)是指端口输出为逻辑0时,对外提供的电 ...

  3. 一文了解上拉电阻和下拉电阻(一)

    上拉(Pull Up )或下拉(Pull Down)电阻(两者统称为"拉电阻")最基本的作用是:将状态不确定的信号线通过一个电阻将其箝位至高电平(上拉)或低电平(下拉),无论它的具 ...

  4. 上拉电阻和下拉电阻,推挽和开漏输出

    上拉电阻 & 下拉电阻 上拉就是将不确定的信号通过一个电阻钳位在高电平,电阻同时起限流作用. 下拉同理,也是将不确定的信号通过一个电阻钳位在低电平. 为什么需要上拉和下拉?以一个开关的例子来解 ...

  5. 【硬件】上拉电阻和下拉电阻的作用

    文章目录 一.前言 二.分类及使用场景 1. 输入时的上拉电阻和下拉电阻 1.1 使用上拉的场景 1.2 使用下拉的场景 1.3 详细描述 1.4 可以输入高电平 2. 输出时的上拉电阻和下拉电阻 2 ...

  6. 上拉、下拉以及对应上拉电阻和下拉电阻的作用原理

    上拉.下拉以及对应上拉电阻和下拉电阻的作用原理 一.什么是上拉和下拉电路 上拉(Pull Up )或下拉(Pull Down)电阻两者统称为拉电阻 上拉就是单片机的IO口串联一个电阻到VDD: 下拉就 ...

  7. 上拉电阻与下拉电阻详解

    上拉电阻和下拉电阻有什么用? 1.提高驱动能力: 例如,用单片机输出高电平,但由于后续电路的影响,输出的高电平不高,就是达不到VCC,影响电路工作.所以要接上拉电阻.下拉电阻情况相反,让单片机引脚输出 ...

  8. 上拉电阻和下拉电阻_硬件基础:下拉电阻和上拉电阻如何工作

    上拉电阻和下拉电阻 by Taron Foxworth 通过塔伦·福克斯沃思(Taron Foxworth) 硬件基础:下拉电阻和上拉电阻如何工作 (Hardware fundamentals: ho ...

  9. 上拉电阻与下拉电阻的作用

    上拉电阻就是把不确定的信号通过一个电阻钳位在高电平,此电阻还起到限流的作用.同理,下拉电阻是把不确定的信号钳位在低电平.上拉电阻是指器件的输入电流,而下拉指的是输出电流. 那么在什么时候使用上.下拉电 ...

  10. 关于上拉电阻的使用总结

    具体的不是很懂这个上拉电阻 但是 具体的使用环境和是使用方法可以弄清楚了 当元器件的电平状态无法自身维持稳定状态时,上拉 电阻可以使器件维持一个稳定的状态 上拉电阻 指的是 使 器件电平状态维持在 高 ...

最新文章

  1. ibm笔记本电脑电池_开善乡 2.0间距笔记本电池连接器公座 11P电池座接口
  2. 有勇气的牛排---linux
  3. 程序员面试题精选100题(34)-数组中只出现一次的数字[算法]
  4. Winform中实现文件批量更名器(附代码下载)
  5. mybatis-plus代码生成器简易使用
  6. 我的新书《Java编程讲义》新鲜出炉啦,欢迎订阅
  7. jquery mobile资源
  8. 单E1光端机分类及技术指标详解
  9. Koa框架——coderhub实战
  10. mybatis 多表查询-多对多
  11. RTP/RTCP协议详解
  12. php+彩票中奖判断,彩票算法 – PHP – 数学似乎不错,但功能是否有效?
  13. 《网络工程师软考辅导——3年真题详解与全真模拟》主要创新点、关注点
  14. 机器学习根据文字生成图片教程(附python代码)
  15. 京津冀辽迎入汛以来最强降雨,四川盆地西部形成暴雨结界
  16. Android竖屏视频录制
  17. 开源HTML编辑器xhEditor用法详解
  18. App上实现用户手写签名保存为透明PNG格式图片
  19. 红帽:商业模式比技术更重要
  20. GPT-3 离通用人工智能有多近?

热门文章

  1. PX4-8-UAVCAN与开源飞控
  2. server-u的详细设置
  3. SAP FI 表
  4. 实验送样、数据分析样品、组名命名规范
  5. ES6基础:let和const
  6. windows10无法启动承载网络
  7. Armv9 registers
  8. verilog 无源蜂鸣器输出7位音符
  9. 二、GitHub使用方法总结
  10. 将U盘启动盘恢复成普通U盘的解决方法