0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单片机上下拉电阻的作用

CHANBAEK 来源: 知行合一硬件笔记 作者: 知行合一硬件笔记 2023-11-06 15:37 次阅读

说到上下拉电阻的作用,在课本中学习时经常会看OD OC门、增强输出驱动能力、维持确定的高低电平状态、抗外界干扰......

图片

之前始终对维持确定的高低电平状态没有足够深的理解,既然单片机自身是有输出高低电平的能力,为什么还需要在外部上下拉,这不是浪费能量吗?

直到自己做项目遇到了奇奇怪怪的现象,并且最终解决了问题,才算是真正体会到了上下拉电阻的必要性。

图片

原来的电路方案如上图,左边板卡中的MCU使用两个通用IO口控制右边的按键板,按键板控制机器的启动和关闭,其中用LED1和LED2两种颜色的灯来指示机器开关机状态。指示灯的要求是机器通电LED1亮,开机LED1灭LED2亮,关机LED1重新亮LED2灭。

非常简单的一个单片机控制方案,装上机器之后却出了问题:220V通电后1~2s的时间内两颗LED灯是同时点亮的,随后LED2才灭。

一开始始终想不通,LED2程序都没有给高电平,他怎么会亮。后来才想起来,从单片机启动到程序运行是有一段时间的,而这个时间IO口的状态是默认状态,查询单片机手册,发现默认状态是有内部上拉。内部上拉电阻阻值是10k。

这么一来,就说得通了,设计右边板卡的工程师三极管下拉电阻其实是为了管子的开关特性考虑,而左边板卡又没有加上下拉。右边板卡的三极管基极下拉电阻是20k,单片机内部上拉电阻为10k,3.3V的供电电源,三极管基极电压就能达到2.2V,足够将三极管导通,因此就出现了两颗LED都点亮的现象。

图片

随后把R1和R2的阻值都改为了1k,通电后发现再没有LED同时点亮的情况。但是很不巧,又出现了一个问题,机器关机时需要LED1再次亮起,LED2灭掉,但状态切换后LED1又出现了一个闪灭的现象。原来是单片机的程序中写了机器关掉之后会有一个自身的复位,而单片机在复位的时候引脚也是默认状态!所以复位的时候本来是需要LED1常亮的,结果因为电阻改小了他又闪灭。

当然把R1又改回20k就能达到要求了。但这毕竟只是止血措施,否则项目改版的成本会增加不少,而且单片机引脚的上下拉本也不是右边板卡的责任范围。

图片

如上图电路应该是本设计比较好的方案,经过了这个电路的问题分析和改进,才算是深入理解了为什么上下拉电阻能够维持IO口的稳定状态。现在,不论是单片机启动时IO口的默认状态,还是复位时的重置,都不会对LED的状态产生影响,因为在单片机状态没定时有上下拉电阻来给。而右边板卡设计时使用的基极下拉电阻正常使用和选择阻值也不会有影响。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    240

    文章

    23103

    浏览量

    657961
  • 单片机
    +关注

    关注

    6030

    文章

    44506

    浏览量

    632432
  • 下拉电阻
    +关注

    关注

    4

    文章

    147

    浏览量

    20488
  • IO口
    +关注

    关注

    3

    文章

    169

    浏览量

    23980
收藏 人收藏

    评论

    相关推荐

    上下拉电阻应用很简单吗?哪些地方要加上下拉电阻

    电路设计中,在哪些地方要加上下拉电阻上下拉电阻加多大呢?是否要考虑它的功耗,以及它的灌电流大小,太大会损坏电子器件。
    的头像 发表于 10-08 16:23 2174次阅读
    <b class='flag-5'>上下拉</b><b class='flag-5'>电阻</b>应用很简单吗?哪些地方要加<b class='flag-5'>上下拉</b><b class='flag-5'>电阻</b>?

    上下拉电阻作用

    上下拉电阻作用
    发表于 04-18 21:21

    上下拉电阻作用

    同一个单片机来驱动,必须设置初始状态.防止直通! 2、定义: l 上拉就是将不确定的信号通过一个电阻嵌位在高电平!电阻同时起限流作用下拉
    发表于 09-23 17:19

    上下拉电阻作用

    上、下拉电阻作用电平兼容板内或板间器件信号电平特性各不相同,出于兼容性的考虑,须加上拉电阻以保证兼容性。当TTL电路驱动COMS电路时,如果TTL电路输出的高电平低于COMS电路的最
    发表于 07-27 08:38

    上下拉电阻有什么用

    位到低电平。这样,一个不确定的信号就确定下来了。接下来,我们将详细介绍上下拉电阻。例子:单片机的I/0口,通电状态下是高电平还是低电平,傻傻分不清,此时我们就可以通过上拉电阻将I/O口
    发表于 11-30 06:07

    上下拉电阻有什么用呢

    。这样,一个不确定的信号就确定下来了。接下来,我们将详细介绍上下拉电阻。例子:单片机的I/0口,通电状态下是高电平还是低电平,傻傻分不清,此时我们就可以通过上拉电阻将I/O口固定为高电
    发表于 01-14 06:50

    单片机上电阻下拉电阻有何区别?

    因为单片机的输出端都是开漏输出的,就像三极管的集电极一样,如果没有上拉电阻它输出不了高电平。而下拉电阻就是拉低电平,跟上面是相反的,不过在单片机
    的头像 发表于 09-11 08:59 1w次阅读

    单片机上电阻下拉电阻作用及原则

    上拉就是将不确定的信号通过一个电阻嵌位在高电平!“电阻同时起限流作用”!下拉同理!
    的头像 发表于 09-23 18:19 3.1w次阅读

    单片机中的上下拉电阻有什么作用

    上拉电阻就是将不确定的信号通过一个电阻拉到高电平,同时此电阻也起到一个限流作用下拉就是下拉到低
    发表于 11-02 16:22 8842次阅读

    上下拉电阻的接线方法及作用介绍

    本文主要介绍了上下拉电阻的接线方法及作用
    的头像 发表于 09-30 11:27 1.9w次阅读
    <b class='flag-5'>上下拉</b><b class='flag-5'>电阻</b>的接线方法及<b class='flag-5'>作用</b>介绍

    单片机上电阻下拉电阻的用处和区别

    上下拉电阻就是加在单片机管脚的带负荷能力。如上拉电阻的接法就是电源正通过一个合适阻值的电阻后接到需上接的管脚即可。
    的头像 发表于 09-18 16:44 6041次阅读
    <b class='flag-5'>单片机上</b>拉<b class='flag-5'>电阻</b>和<b class='flag-5'>下拉</b><b class='flag-5'>电阻</b>的用处和区别

    详解单片机上电阻下拉电阻的意义及作用资料下载

    电子发烧友网为你提供详解单片机上电阻下拉电阻的意义及作用资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资
    发表于 04-21 08:51 5次下载
    详解<b class='flag-5'>单片机上</b>拉<b class='flag-5'>电阻</b>、<b class='flag-5'>下拉</b><b class='flag-5'>电阻</b>的意义及<b class='flag-5'>作用</b>资料下载

    上下拉电阻在电路设计中的应用

      “上下拉电阻应用很简单吗?”那可不一定。电路设计中,在哪些地方要加上下拉电阻?上下拉电阻加多
    的头像 发表于 11-23 15:27 2049次阅读
    <b class='flag-5'>上下拉</b><b class='flag-5'>电阻</b>在电路设计中的应用

    电路设计:上下拉电阻应用很简单吗?

    上下拉电阻应用很简单吗?”那可不一定。电路设计中,在哪些地方要加上下拉电阻上下拉电阻加多大呢
    的头像 发表于 03-17 16:32 1037次阅读
    电路设计:<b class='flag-5'>上下拉</b><b class='flag-5'>电阻</b>应用很简单吗?

    电阻是如何实现上下拉功能的呢?

    电阻是如何实现上下拉功能的呢? 上下拉功能是指在电路中通过连接电阻来实现对信号的上拉和下拉控制。在数字电路中,上拉和
    的头像 发表于 02-04 09:32 859次阅读