一个I/O口控制两个LED灯

方案1:

优点:平时基本没有功耗;

缺点:电路复杂。

经本人在PIC18F4550测试板上测试,完全没有问题。



方案二:

本人没有测试。

优点:电路简单

缺点:平时还有功耗,二极管VD1一直导通态。

单片机中有的I/O口可设置为三种状态:高电平、低电平和高阻态,利用这一点,就可以用一个I/O口实现对2个LED的四种状态的控制。下面从硬件和软件两方面描述其实现:

第一种方法:
1.硬件电路连接: 
        将两个LED串联后和1N4148并联,两端分别接板子上的5V电源(引入电源串接一电阻)和地,将两二极管的中间接I/O口,就可以控制两LED的四种状态了


2.软件设计: 
        当要使上面的LED亮时,I/O口置为低电平。此时下面的LED无电流流过,不会亮。 
        当要使下面的LED亮时,I/O口置为高电平。此时上面的LED1无电流流过,不会亮。 
        当要两LED均不亮时,将I/O口置为高阻态,此时发光管被并联的1N4148旁路,故不会亮。 
        当要两LED一起亮,则让I/O口在某一固定频率下以50%的占空比进行高低电平不停转换,利用视觉暂留,使人眼感觉两个灯都为亮的状态

 

第二种方法:

电路上有考究,发光二极管的门限电压为2V,串联之后为4V,将两只二极管串联后正极接+3.6V,负极接地,两只发光二极管均不亮,00。 

中间接IO口,当IO输出为悬空时,两只发光二极管均不亮; 
                        当IO输出为高时,下面的发光二极管亮; 
                        当IO输出为低时,上面的发光二极管亮; 
                        当IO输出为高低交替的振荡时,两个发光二极管均亮。 

完成,一个IO控制四种状态。

连接:

http://bbs.ednchina.com/BLOG_ARTICLE_1982523.HTM



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值