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

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

3天内不再提示

浅析单片机IO口工作在高阻态的输入模式是什么状态

GReq_mcu168 来源:头条号 作者:喝枸杞论电子 2021-04-28 16:54 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

我们都知道单片机的双向IO口既能输入也能做输出,推挽输出时IO口能通过内部上下MOS管开关切换能输出高低电平,高阻态输入时,IO口内部上下MOS管都关闭,IO口工作在高阻态的输入模式下,那么高阻态是个什么样的概念呢?下图是常见的IO的内部框图。

433fee0e-a7ff-11eb-9728-12bb97331649.png

当IO口处于高阻态时,我们也将其称为浮空输入状态,此时其电平是不确定的,既不是高电平也不是低电平。我们可以想象成,单片机在检测IO口的电平高低时,相当于在CPU里面有一个类似电压表的东西,并且这个电压表内阻很大,假设内阻为100MΩ(示意图如下)。在这里,我们可以把这个电压表的内阻称为这个IO口此时的输入电阻

4351fdba-a7ff-11eb-9728-12bb97331649.png

现在设想,当我不小心用手碰到了IO端口,而由于人体本身就是阻值很大的导体,周围有很多电磁波干扰,手上可能存在一些很微弱的电流,这个时候,电压表的读数就会发生变化,单片机读取的电平高低就会变。高阻态表现出来的结果就是外界很小的干扰,都可能导致读取的电平变化,甚至即使没有碰这个IO口,它每次读取的结果也可能不一样,因为外界的电磁波等可能会干扰到IO口。IO口输入端不使用时,可通过电阻单独连接到 VDD或 VSS。

为什么双向IO口输入的时候要求是高阻态呢?

我们假设现在有一种输入设备,等效电路如下图。内部开关上下切换,它就会输出高低电平给到单片机的IO口,IO口通过引脚内部电压表可以检测出来输入的是高电平还是低电平。但是这个设备驱动能力很弱,连LED也驱动不了。设备里的100kΩ,可以叫做设备的输出电阻(同样也可以近似认为是输出阻抗)。

4385445e-a7ff-11eb-9728-12bb97331649.png

如果我们采用内部上拉的方式做输入检测的话,如下图,让这个设备输出低电平,然后连接单片机的IO口。这时,5V经过IO口内部10kΩ上拉电阻到达IO口,再到装置内部的100kΩ电阻,通过开关接到GND。根据分压原理,IO口上读到的电压值大概是4.55V,于是单片机读取的是高电平。而事实上,设备是想输出低电平告知单片机。这里单片机管脚作为输入功能,却干扰了外界装置的输出值,相当于单片机的这个IO口也在输出。

439113c4-a7ff-11eb-9728-12bb97331649.png

如果我们将IO口的输入状态设置为高阻状态,且没有外接上下拉电阻,内部的两个上下MOS管都是断开的,对外部呈现高阻态。从下图中可以看出,装置输出的电平能被准确的读取到单片机中。之所以能准确读取,就是因为设备输出电阻比单片机IO口的输入电阻要小。有人可能会说,如果把设备中的电阻换成1000MΩ,这个时候这个单片机又不能准确读取电平了。但是一般情况下,我们不需要考虑这么极端。如果是理想的高阻态,其输入阻抗应该是无穷大,而这有点像超导体一样比较特殊。一般情况下认为导线电阻几乎为0,所以同样也认为高阻态输入电阻是无穷大。

43ad64a2-a7ff-11eb-9728-12bb97331649.png

总的来说,就是高阻态情况下,IO口输入电阻很大,而不容易干扰那些输出电阻较大、驱动能力弱的装置输出到IO口上的电平。
编辑:lyn

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

    关注

    6078

    文章

    45643

    浏览量

    676153
  • IO口
    +关注

    关注

    3

    文章

    170

    浏览量

    25957
  • 高阻态
    +关注

    关注

    0

    文章

    19

    浏览量

    15805

原文标题:单片机IO口输入的高阻态是啥概念?

文章出处:【微信号:mcu168,微信公众号:硬件攻城狮】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    JL杰理AC696N系列开发GPIO控制大全:模式、API与特殊引脚

    。这里特地AC696N开发板上把常用的GPIO配置都跑了一遍,整理成表格,方便写驱动的时候直接查。 一、GPIO工作模式 输入模式 :可
    发表于 04-02 21:21

    单片机低功耗的处理

    睡眠的方式不止一种,根据需要选择合适的。 2、所有悬空的IO都设成推挽低速输出低。注意,是悬空的IO。也有人说设成浮空输入,我试过几款
    发表于 01-21 08:25

    单片机里的程序运行方式

    我们想要理解单片机是如何运行程序的,我们首先需要了解单片机的组成,我们这里以80C51单片机为例来理解程序单片机中是如何运行的。
    发表于 01-16 06:57

    单片机Io检测到高电平的最短时间是多少?

    请教一下大神单片机Io检测到高电平的最短时间是多少?
    发表于 01-14 08:20

    请问单片机IO控制19V5A直流电通断应该怎样实现?

    单片机IO控制19V 5A直流电通断,不使用继电器,应该怎样实现?
    发表于 01-06 08:18

    单片机遥控开关mos管介绍

    、Source,简称G、D、S。 我们把单片机的一个IO接到MOS管的Gate端口,就可以控制这个灯泡的亮灭。当单片机IO
    发表于 01-04 07:59

    请问CW32F030上电IO是处于什么状态

    请问CW32F030上电IO是处于什么状态?为了防止MCU上电,对外围的电路的误动作,一把很多MCU会上电瞬间设置为,不知道CW32F
    发表于 12-09 07:38

    GPIO的常见名词

    ,GPIO通常由一个或多个引脚组成,可以通过编程来配置引脚的工作模式输入或输出)、电平状态(高电平或低电平)等参数,即, 数字芯片的IO
    发表于 12-02 07:58

    单片机系列 的IO输出阻抗是多少?

    通常单片机系列 的IO输出阻抗是多少?
    发表于 11-24 06:16

    IO8种工作模式和应用

    芯片设计中,IO输入/输出端口)是微控制器(MCU)或处理器与外部设备交互的关键接口。IO
    发表于 11-14 06:46

    MCU单片机,常用32位单片机,低功耗单片机MM32L系列

    MM32L系列低功耗单片机搭载了Arm®Cortex®-M0+内核,具备高效能和代码密度,主频最高可达48MHz。其最大的亮点在于功耗控制方面取得了突破性进展:待机模式下功耗可低至
    的头像 发表于 11-13 17:10 914次阅读

    单片机采用什么电流控制

    的需求。 1.单片机自身的工作电流特性 单片机自身的工作电流主要由内部电路决定,通常在微安级到毫安级之间。例如,8 位单片机
    的头像 发表于 07-30 10:07 980次阅读

    怎么测单片机系统频率

    单片机系统频率是指单片机工作时的时钟频率,它直接影响单片机的运行速度和处理能力,准确测量系统频率对单片机应用开发、程序调试和性能优化具有重要意义。测量
    的头像 发表于 07-25 11:39 1235次阅读

    单片机怎么烧程序

    单片机烧程序是将编写好的程序代码写入单片机内部存储单元,让单片机按照预设逻辑工作的过程,是单片机应用开发中不可或缺的环节。无论是简单的灯光控
    的头像 发表于 07-23 11:47 2347次阅读

    低功耗单片机工作模式是怎样的?看完这篇你就懂了!

    物联网、可穿戴设备、智能仪表等领域,低功耗单片机工作模式是设备延长续航能力的核心技术支撑。这类单片机通过精细化的电源管理机制,保证核心功
    的头像 发表于 07-14 10:39 930次阅读
    低功耗<b class='flag-5'>单片机工作</b><b class='flag-5'>模式</b>是怎样的?看完这篇你就懂了!