通过两个PIC引脚驱动六只LED灯

发布时间:2014-12-16 10:17    发布者:designapp
关键词: LED , 互补双极型晶体管 , PIC10F200

        本设计实例展示了仅使用两条MCU的I/O口线驱动六只LED灯的新方法,这种方法尤其适用于任何引脚有限的芯片。这种方法使用了两条I/O口线以及一对互补双极型晶体管。通过多路复用的方法可点亮一只以上的LED灯。
之前的一个设计实例(参考文献1)展示了如何使用两条I/O口线驱动四只LED灯。其他几个设计实例(参考文献2~5)则使用了附加逻辑,导致成本和尺寸有所增加。


图1:测试选择PIC10F200,固件以两个独立、简单的汇编程序源代码的方式提供。

注意:VDD必须在2V和3V之间。例如,如果LED2点亮(表1),那么在VDD过高的情况下,LED4和LED6也将被点亮。可以选择使用任何通用低功率晶体管,但如想使所有LED保持同样的亮度,则需选择低VCE(sat)的晶体管。
表1:LED驱动逻辑表。避免(0,0)和(1,1)。



测试选择了PIC10F200,因为PIC10F200是最小、最简单的六引脚MCU。出于示范目的,固件以两个独立、简单的汇编程序源代码的方式提供。
dotmode1.asm为自由运行的点追踪程序。
barmode1.asm显示了增量柱状图。
(通过选择“另存为”下载DI5459PIC2IO6LEDr2.zip.pdf,并删除虚设的“.pdf”。PIC10F322源代码也包含在其中。)
注意:在任何一种模式下,每次仅采用最小电流(高亮度LED低至2mA)及周期性短脉冲突发模式驱动一只LED灯。汇编程序源代码做了完整注释,优化了长度,不超过256个字,让用户可选择其他任何引脚有限的PIC。

参考文献:
[1]Decoder lights the way (EDN | February 19, 2009)
[2] Microcontroller drives logarithmic/linear dot/bar 20-LED display (EDN | January 18, 2007)
[3]Squeeze extra outputs from a pin-limited microcontroller (EDN | August 4, 2005)
[4]Microcontroller’s single I/O-port line drives a bar-graph display (EDN | July 6, 2006)
[5] Drive 12 LEDs with one I/O line (EDN | February 4, 2010)



本文地址:https://www.eechina.com/thread-135284-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关在线工具

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表