用一个I/O口控制1个三色指示灯, 2个单色指示灯
http://www.baiheee.com/Documents/081207/081207184434.htm
http://www.baiheee.com/Documents/081207/081207184704.htm
当要显示绿灯(LED1)亮时,I/O口可置为低电平。此时红灯(LED2)反向偏置,无电流流过,不会亮。
当要显示红灯(LED2)亮时,I/O口可置为高电平。此时绿灯(LED1)反向偏置,无电流流过,不会亮。
若要指示灯不亮,可将I/O口置为高阻态,此时两个发光管均无电流流过,也不会亮。
若要显示橙灯亮时,此时LED1、LED2要一起亮,则可以让I/O口在某一固定频率下以50%的占空比进行高低电平不停转换,
利用视觉暂留,使人眼感觉到显示的是橙灯。

由于单片机中的I/O口通常可设置为三种状态,即输出高电平、输出低电平和输入状态(高阻态)。
利用这一点,可以很方便地用一个I/O口实现对2个指示灯的控制。其电路如右图所示。

当要使LED1亮时,I/O口可置为低电平。此时LED2无电流流过,不会亮。
当要使LED2亮时,I/O口可置为高电平。此时LED1无电流流过,不会亮。
若要LED1、LED2均不亮,可将I/O口置为高阻态,此时发光管被VD1旁路,也不会亮。
若要LED1、LED2一起亮,则可以让I/O口在某一固定频率下以50%的占空比进行高低电平不停转换,
利用视觉暂留,使人眼感觉两个灯都为亮的状态。
http://www.amobbs.com/thread-5561641-1-1.html

IO高阻时,LED3亮,LED1 LED2因为LED3电压钳位不亮。
IO输出高电平,LED2亮,LED1相当于短路,不亮,LED3因为LED2钳位也不会亮。
IO输出低电平,LED1亮,LED2相当于短路,不亮,LED3因为LED1钳位也不会亮。
需要额外考虑的只有LED3支路的压降,要大于LED1、LED2的大的,小于LED1+LED2,如果都是同样的LED,在LED3支路上加一个二极管。
流过LED3的电流比LED1、LED2要小约一半,但高亮LED,1mA以上电流减半亮度减弱不是很明显。也可以LED1、LED2用普亮的,LED3用高亮的。

用一个I/O口控制1个三色指示灯, 2个单色指示灯的更多相关文章
- android gpio口控制
android gpio口控制 GPIO口控制方式是在jni层控制的方式实现高低电平输出,类似linux的控制句柄方式,在linux系统下将每个设备看作一个文件,android系统是基于linux内 ...
- 利用OpenCV和MFC对话框建设一个有滑动条控制的播放器--转
(一)问题的提出: OpenCV有一个很简单的播放视频文件并加载滑动条的程序,但是如何用MFC对话框来创建一个有滑动条控制的播放器呢,网络上四处搜索都没有代码可以参考,下的都是些骗子链接文件,很过分, ...
- 一个普通的 Zepto 源码分析(三) - event 模块
一个普通的 Zepto 源码分析(三) - event 模块 普通的路人,普通地瞧.分析时使用的是目前最新 1.2.0 版本. Zepto 可以由许多模块组成,默认包含的模块有 zepto 核心模块, ...
- nodejs高并发大流量的设计实现,控制并发的三种方法
nodejs高并发大流量的设计实现,控制并发的三种方法eventproxy.async.mapLimit.async.queue控制并发Node.js是建立在Google V8 JavaScript引 ...
- 一口一口吃掉Volley(三)
欢迎访问我的个人博客转发请注明出处:http://www.wensibo.top/2017/02/17/一口一口吃掉Volley(三)/ 学习了一口一口吃掉Volley(二)之后,你应该已经学会了如何 ...
- Java集合-5. (List)已知有一个Worker 类如下: 完成下面的要求 1) 创建一个List,在List 中增加三个工人,基本信息如下: 姓名 年龄 工资 zhang3 18 3000 li4 25 3500 wang5 22 3200 2) 在li4 之前插入一个工人,信息为:姓名:zhao6,年龄:24,工资3300 3) 删除wang5 的信息 4) 利用for 循
第六题 5. (List)已知有一个Worker 类如下: public class Worker { private int age; private String name; private do ...
- 给定一个字符串里面只有"R" "G" "B" 三个字符,请排序,最终结果的顺序是R在前 G中 B在后。 要求:空间复杂度是O(1),且只能遍历一次字符串。
题目:给定一个字符串里面只有"R" "G" "B" 三个字符,请排序,最终结果的顺序是R在前 G中 B在后. 要求:空间复杂度是O(1),且 ...
- Linux下一个最简单的不依赖第三库的的C程序(1)
如下代码是一段汇编代码,虽然标题中使用了C语言这个词语,但下面确实是一段汇编代码,弄清楚了这个代码,后续的知识点才会展开. simple_asm.s: #PURPOSE: Simple program ...
- 我的第一个netcore2.2 api项目搭建(三)续
上一章快速陈述了自定义验证功能添加的过程,我的第一个netcore2.2 api项目搭建(三) 但是并没有真正的去实现,这一章将要实现验证功能的添加. 这一章实现目标三:jwt认证授权添加 在netc ...
随机推荐
- makefile实例(3)-多个文件实例优化
我们先看一下make是如何工作的在默认的方式下,也就是我们只输入make命令.那么,1.make会在当前目录下找名字叫“Makefile”或“makefile”的文件.2.如果找到,它会找文件中的第一 ...
- 自定义View--一个简单地圆形Progress效果
先看效果图吧 我们要实现一个自定义的再一个圆形中绘制一个弧形的自定义View,思路是这样的: 先要创建一个类ProgressView,继承自View类,然后重写其中的两个构造方法,一个是一个参数的,一 ...
- VB6.0编程笔记——(1)篇外篇&目录
从计算机专业毕业到进入IT行业,说来也有些年头了.相比较而言算是幸运,也有很多的同学进入了其他行业,也有一些朋友又想进入这个行业.现在回想自己的一路历程,总结一下,也是一份记忆. 基于以上的原因,希望 ...
- 代理抓取RSS信息
最近工作很闲,就自己写了一个可以看RSS订阅的网站.话说,RSS阅读器到处都是,随便下一个就可以了,为什么还去做一个网站形式的呢?作为一个热(xian)爱(de)前(dan)端(teng)的程序员,我 ...
- Win7桌面快捷方式全变成某个软件的图标,然后所有快捷方式都只打开这个图标的软件
电脑真是用到老学老好,之前没有遇到的情况,今天终于碰上了. 由于电脑桌面搜狗浏览器图标总不显示,于是选择快捷方式的打开方式为搜狗浏览器,结果,尼玛呀,全部快捷图标都变成搜狗的. 上网找了一下,双击就搞 ...
- anible包模块管理
ansible使用包管理模块 一般使用的包管理模块的RPM,和YUM 参数 必填 默认 选择 说明 Conf_file No YUM的配置文件 Disable_dbg_check No No Yes/ ...
- 网易实习笔试真题C/C++
刚做的时候根本就没有想到解题思路,刚好看到了别人的思路,自己写了一下.里面对unordered_map及vector二维数组的建立很灵活,另外区别了一下map,unordered_map,hash_m ...
- SpringMVC + Spring + MyBatis 学习笔记:遭遇order by 排序问题
系统:WIN8.1 数据库:Oracle 11GR2 开发工具:MyEclipse 8.6 框架:Spring3.2.9.SpringMVC3.2.9.MyBatis3.2.8 用MyBatis写排序 ...
- Linux网卡启动报错(this device is not active)
重启网络服务 service network restart 报如下错误: shutting down interface eth0: error:device "eth0" ...
- PV3D学习笔记-导入DAE模型
网上关于PV3D导入DAE模型的例子都非常多,可惜我研究了半天,一个都没成功,或者是破面问题,或者是贴图不显示,再或者贴图乱掉了.今天晚上终于搞定,心得发上来. 制作模型的软件是SketchUp ...