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

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

3天内不再提示

C51单片机的IO口介绍(下)

CHANBAEK 来源:Zi Jin Code 作者:锟酱不是酱 2023-11-02 10:57 次阅读

上一篇文章我们对C51的IO简单的介绍了一下,现在我们来简单了解C51的IO的结构

这里我们学习一下比较常见的单片机的IO模式,分别是准双向,开漏输出和推挽输出

(这里要提一嘴,我们用的STC88C52RC是没有推挽输出功能的,STC公司后续推出的一些机型才有推挽输出功能)

接下来我们来看看这几种模式

1.准双向

看看下面的原理图,机内信号通过一个非门取反后送入一个MOS管,MOS管负责控制这个IO的高低电平,配合内部上拉电阻完成高低电平的输出

图片

为了方便我们分析,我们把这个MOS管看成一只NPN三极管。区别是三极管靠电流导通,MOS管靠电压导通

图片

结合前面我们讲过的知识,对于一只NPN三极管,基极b电压比集电极c电压大0.7V的时候,三极管发射极e与集电极c之间导通

准双向输出高电平

当机内给高电平信号的时候,经过非门取反,得到低电平信号,在这里我视作0V,非门取反后直接接到三极管b极,相当于b极电压0V,三极管的c极接地,视作0V。此时由于b极电压与c极电压差小于0.7V,三极管截止

图片

电源正极的电流就经过内部上拉电阻流向c极,只有一路电流从正极到上拉电阻再流出IO,这时候相当于IO接入高电平

准双向输出低电平

当机内给低电平信号的时候,经过非门取反,得到高电平信号,在这里我视作5V,非门取反后直接接到三极管b极,相当于b极电压5V,三极管的c极接地,视作0V。此时由于b极电压与c极电压差达到0.7V以上,三极管导通

图片

电源正极的电流就经过内部上拉电阻流向c极,c,e之间导通,所以直通,一直流至负极。另一路电流从外部IO经过三极管的C极,再流向e极,最后流至地,实现接低

这时候我想你会问,那电流为什么不从vcc流向电阻,最后流出IO呢?我想说,我相信你高中的时候学过,电流总是从正极流向负极。我们来观察,在这个电路里面,正极的电流已经流向负极了,IO这一路电流也流向负极,也就实现了低电平输出

2.开漏输出

开漏输出的结构如下

图片

细心的朋友已经发现了,开漏输出的电路结构跟准双向的区别就是没有内部上拉电阻

内部输出0的时候,原理跟准双向输出相同

图片

但是如果内部输出为1的时候

图片

这时候IO是悬空状态,相当于IO跟单片机断开了

如果需要输出高电平,这时候就需要外部上拉电阻

图片

3.推挽输出(了解)

所谓的推挽,就是指使用两个三极管或者MOS管交替地将信号推到正和负极性,实现放大的效果

推挽输出的电路结构

图片

在这个结构中,两个MOS管配合,实现推挽输出,最大的特点就是输出电流够大(大约20mA)

在这里,T1 MOS管可以看成PNP三极管,T2 MOS管可看成NPN三极管

图片

输出高电平的原理:

内部输出高电平信号经过非门取反,送到两个三极管的b极,上面的PNP三极管导通,下面的NPN三极管截止,电流从VCC流过PNP管,流出IO。

图片

输出低电平的原理:

内部输出低电平信号经过非门取反,送到两个三极管的b极,上面的PNP三极管截止,下面的NPN三极管导通,IO电流经过NPN三极管流过地,实现输出低电平

C51的IO模式

​我们的AT89C52单片机只支持开漏输出和准双向输出

P0组IO只支持开漏输出,仔细观察,你的开发板上的P0组IO是不是有一排上拉电阻?

图片

P1,P2,P3支持准双向IO输出

这些是单片机设计的时候就配置好的

我们无法修改,但是根据不同IO组的输出功能进行合理利用,依旧能达到我们想要的效果

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

    关注

    6035

    文章

    44554

    浏览量

    634590
  • MOS管
    +关注

    关注

    108

    文章

    2410

    浏览量

    66755
  • C51单片机
    +关注

    关注

    12

    文章

    164

    浏览量

    34756
  • IO口
    +关注

    关注

    3

    文章

    170

    浏览量

    24022
收藏 人收藏

    评论

    相关推荐

    C51单片机IO原理及51 C语言

    C51单片机IO原理及51 C语言
    发表于 07-05 11:51

    C51单片机并行扩展设计及应用

    C51单片机是我们生活中最常用的系列,MCS-51系列单片机有4个并行(P0,P1,P2,P3
    发表于 10-28 16:02 33次下载
    <b class='flag-5'>C51</b><b class='flag-5'>单片机</b>并行<b class='flag-5'>口</b>扩展设计及应用

    单片机基础知识C51

    单片机基础知识C51版,学习单片机的基础知识。包括单片机的简介,单片机的程序如何写,单片机的应用
    发表于 11-18 16:48 0次下载

    51单片机IO工作原理

    51单片机IO工作原理。。。。。。。。
    发表于 03-04 15:31 11次下载

    89C51单片机IO模拟串行通信的实现方法

    89C51 单片机IO 模拟串行通信的实现方法
    发表于 08-31 13:56 20次下载

    单片机IO介绍

    单片机IO介绍
    发表于 02-14 16:54 25次下载

    单片机开发软件Keil C51使用步骤详细介绍

    单片机开发软件Keil C51使用步骤详细介绍
    发表于 12-19 15:40 7次下载

    51单片机、AVR单片机和PIC单片机IO操作

    51单片机、AVR单片机和PIC单片机IO结构的均不同,导致了
    发表于 02-20 20:25 1.1w次阅读
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>、AVR<b class='flag-5'>单片机</b>和PIC<b class='flag-5'>单片机</b>的<b class='flag-5'>IO</b><b class='flag-5'>口</b>操作

    基于89c51单片机IO操作的几个历程资料分享

    基于89c51单片机IO操作的几个历程
    发表于 04-23 15:37 16次下载
    基于89<b class='flag-5'>c51</b><b class='flag-5'>单片机</b><b class='flag-5'>IO</b><b class='flag-5'>口</b>操作的几个历程资料分享

    51单片机如何读写AT29C040?51单片机读写AT29C040的c51程序免费下载

    本文档的主要内容介绍的是51单片机如何读写AT29C040?给大家介绍一个51
    发表于 09-06 15:00 27次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>如何读写AT29<b class='flag-5'>C</b>040?<b class='flag-5'>51</b><b class='flag-5'>单片机</b>读写AT29<b class='flag-5'>C</b>040的<b class='flag-5'>c51</b>程序免费下载

    51单片机教程之80C51单片机C语言程序设计资料概述

    本文档的主要内容详细介绍的是51单片机教程之80C51单片机C语言程序设计资料概述主要内容包括
    发表于 12-05 11:53 299次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>教程之80<b class='flag-5'>C51</b><b class='flag-5'>单片机</b>的<b class='flag-5'>C</b>语言程序设计资料概述

    PIC单片机以及51单片机和AVR单片机IO操作方法介绍

    51单片机IO的结构比较简单,每个IO只有一个IO
    发表于 09-11 15:19 2027次阅读

    单片机IO操作总结

    单片机IO操作总结一、单片机IO概述二、单片机
    发表于 11-05 13:06 31次下载
    <b class='flag-5'>单片机</b><b class='flag-5'>IO</b><b class='flag-5'>口</b>操作总结

    C51单片机流水灯C代码

    C51单片机流水灯C代码
    发表于 11-05 15:20 34次下载
    <b class='flag-5'>C51</b><b class='flag-5'>单片机</b>流水灯<b class='flag-5'>C</b>代码

    C51单片机C52单片机内部的资源区别

    C52单片机可以理解为是C51单片机的增强版• 两个方面有差异,存储空间和定时器计数器方面有区别 ○ C52
    发表于 11-19 10:36 20次下载
    <b class='flag-5'>C51</b><b class='flag-5'>单片机</b>与<b class='flag-5'>C</b>52<b class='flag-5'>单片机</b>内部的资源区别