学习51单片机的时候我们就知道51单片机的I/O口的特点:P0口没有弱上拉,所以做地址线时不用上拉,但输出“1”时就要加上拉电阻,不然输出电平到不了高电平,P1~P3则不存在这个问题,每个输出管脚都有弱上拉电阻(也就是电阻很大的上拉电阻),造成的结果是输出高电平电流很小,为uA量级,驱动不了LED、数码管之类的,所以要么在外加一个NPN的三极管增强驱动,要么LED、数码管用共阳极接法(也就是LED正接VCC,负接MCU的I/O;数码管用共阳数码管,COM口接VCC)。

  虽然道理懂得,但很多时候脑子太死了,MCU接其他器件的时候,就要MCU的I/O输出驱动电流这事给忘了。下面是一个教训:三个不同类型MCU控制继电器的电路。

图1 MCU采用STC89C51,增加一个PNP,增强了驱动能力,能控制继电器TQ-RELAY的闭合

图2 MCU用的是C8051F120,I/O端口高低电平能控制光耦继电器AQW610的闭合

图3 MCU用的是ADI公司的单片机ADuC842,这种解法,MCU的I/O控制不了AQW610的闭合

   图2和图3基本是相同的电路,只不过是MCU不一样,为什么一个能控制AQW610,一个不行呢?让我们先来看看AQW610的DataSheet.

AQW610的电气特性

AQW610光耦继电器里的二极管工作电流常闭端为3.0mA,常开端为1.3mA。

再来看看单片机ADuC842(ADI公司兼容的51单片机)

ADuC842的电气特性

  ISINK为灌电流,是指低电平输出时,能够吸收的电流;

  ISOUCE为拉电流,指高电平输出时,能够输出的电流;

  在这里虽然没有明确给出拉电流灌电流的最大值,只是把这两个作为输出高电流和低电平的测试条件,但可以认为这个测试条件也就是这款MCU能输出的最大电流了。ADuC842高电平的驱动电流只能到80uA,P0~02、ALE低电平的驱动电流为1.6mA,P3低电平的驱动电流能达到3mA。因此想要图3电路工作,AQW610的1脚接VCC,4脚接ADuC842的P3口某脚(P0~P2不行)。

C8051F120的极限电气参数

  从C8051F120的电气特性就可以知道C8051F系列单片机I/O有很大的驱动电流,要注意上表是极限参数,也就是说如果超过列出的极限参数的话,有可能导致器件永久损坏,所以100mA的最大输出拉电流(输出高电平),足以直接驱动LED、数码管及其他器件。

  只要是驱动器件的时候才考虑拉电流是否大于被驱动器件的输入电流需求,如果MCU是驱动地址线或数据线,如SPI、74LS573等一些器件,就很少要考虑电流这方面。

下面介绍一下常用的51兼容单片机的驱动能力:

1)     ADuC841

ADuC841中的P1口主要作为模拟输入口使用,在作为数字口使用时,只能作为输入口使用,不能作为输出口。而且作为数字输出口使用时,通常是高电平有效;当作为按键输入时,应该加下拉电阻,而不是上拉电阻(按键一端接VCC,另一端接下拉电阻,电阻另一端接地)。

2)     ADuC812

P3口可以比别的端口吸收更大的灌电流(可达8mA),可以直接驱动LED和光电耦合器件。

3) STC89C51

Sinking Current(灌电流) Sunk

Sourcing Current(拉电流)

4)  Atmel AT89S51

5) Intel 8051

6)华邦W78E516B

 7)PHILIPS P89C5x

总结:在输出电流驱动能力方面,C8051F系列单片机真是一骑绝尘

C8051F学习笔记:单片机的驱动能力的更多相关文章

  1. input子系统学习笔记六 按键驱动实例分析下【转】

    转自:http://blog.chinaunix.net/uid-20776117-id-3212095.html 本文接着input子系统学习笔记五 按键驱动实例分析上接续分析这个按键驱动实例! i ...

  2. 学习笔记——单片机简介 & 点亮LED & 流水灯 & 电路基础【更新Ing】

    视频地址:https://www.bilibili.com/video/av10765766 超详细!!!!!! 单片机内部三大资源 [资源:单片机可提供使用的东西] FLASH 可以重复擦写 断电后 ...

  3. AM335x(TQ335x)学习笔记——GPIO关键驱动移植

    或按照S5PV210学习秩序.我们首先解决的关键问题.TQ335x有六个用户按钮,每个上.下.剩下.对.Enter和ESC. 我想开始学习S5PV210当同一,写输入子系统驱动器的关键问题要解决,但浏 ...

  4. AM335x(TQ335x)学习笔记——GPIO按键驱动移植

    还是按照S5PV210的学习顺序来,我们首先解决按键问题.TQ335x有六个用户按键,分别是上.下.左.右.Enter和ESC.开始我想到的是跟学习S5PV210时一样,编写输入子系统驱动解决按键问题 ...

  5. Linux 驱动学习笔记05--字符驱动实例,实现一个共享内存设备的驱动

    断断续续学驱动,好不容易有空,做了段字符驱动的例子.主要还是跟书上学习在此记录下来,以后说不定能回过头来温故知新. 首先上驱动源码 gmem.c: /************************* ...

  6. python自动化学习笔记10-数据驱动DDT与yml的应用

    在测试工作中,针对某一API接口,或者某一个用户界面的输入框,需要设计大量相关的用例,每一个用例包含实际输入的各种可能的数据.通常的做法是,将测试数据存放到一个数据文件里,然后从数据文件读取,在脚本中 ...

  7. MongoDB学习笔记~关于官方驱动集成IQueryable之后的一些事

    回到目录 关于官方驱动集成IQueryable之后的一些事,有好事也有坏事,好事就是它会将你的linq语句非常友好的翻译成MongoDB语句,而坏事就是有一些linq语句不会被翻译,不会被翻译的代价就 ...

  8. linux 驱动学习笔记04--简单驱动

    首先贴代码helloworld.c和Makefile /************************************************************************ ...

  9. AM335x(TQ335x)学习笔记——Nand&&网卡驱动移植

    移植完成声卡驱动之后本想再接再励,移植网卡驱动,但没想到的是TI维护的内核太健壮,移植网卡驱动跟之前移植按键驱动一样简单,Nand驱动也是如此,于是,本人将Nand和网卡放在同一篇文章中介绍.介绍之前 ...

随机推荐

  1. POJ_3083——贴左右墙DFS,最短路径BFS

    Description The cornfield maze is a popular Halloween treat. Visitors are shown the entrance and mus ...

  2. jdk各个版本的特性

    http://blog.csdn.net/mixiuali/article/details/8180100

  3. CSS 代码是什么?(转)

    转自:http://www.divcss5.com/rumen/r95.shtml CSS 代码是什么,什么是CSS代码? 目录 什么是CSS css代码样子(图) 作用 相关扩展阅读 一.了解什么是 ...

  4. 由fprintf和printf看C语言三种标准流

    一.C语言中的三种标准流 1.标准输入流:stdin 2.标准输出流:stdout 3.标准错误输出流:stderr 他们的类型都是File * 二.fprintf于printf的区别 frintf( ...

  5. Server Job: error: String or binary data would be truncated. The statement has been terminated.

    "String or binary data would be truncated. The statement has been terminated" most probabl ...

  6. DevExpress之进度条

    progressBarControl和marqueeProgressBarControl 一.progressBarControl progressBarControl是一个进度条控件 几个重要参数 ...

  7. 【Spring MVC系列】--(5)理解AOP

    1.java反射 实用:JAVA反射机制及应用例子 http://407827531.iteye.com/blog/1173930 系统:java反射原理 http://china-jianchen. ...

  8. 关于退运美国转基因玉米含有MRI 162转基因成分的质疑

    6月30日,新华社刊出文章"我国退运125.2万吨进口美国转基因玉米",读后有感. 文章说:国家质检总局办公厅副主任陆春明30日介绍,截至今年6月16日,全国出入境检验检疫机构共在 ...

  9. 2d-x中Lua类型强转问题

    在Lua中,使用CCDictionary进行保存CCSprite对象,但是,在CCDictionary取出来的时候,此时是一个CCObject对象,无法调用子类精灵的一些方法.那只能进行强转的. 那么 ...

  10. Intent 意图 结构 简介

    Intent简介 官方解释: An intent is an abstract description of an operation操作 to be performed展示.表演. It can b ...