本文详细介绍如何使用便宜的555定时器,在一些不需要LED驱动器全部功能的应用中,代替微处理器对专用led驱动器实施控制。这样做可让用户在降低总系统成本的同时,维持 LED驱动器的恒定电流。
相比几年以前,现在使用LED的应用越来越多。这些应用从高端视频显示器到低端照明应用,不一而足。设计人员通常只需要专用LED驱动器的部分功能,但却无力负担控制它们所需的微处理器的相关成本费用。
专用LED驱动器常常被设计为微处理器控制型,旨在实现诸如模拟或脉宽调制(PWM) LED电流控制、每个LED的独立控制、LED状态和故障信息读取等特性。对于一些仅要求恒定LED 电流的应用(例如:LED照明或者发光)来说,可能不需要这些高级特性。在这些应用中,诸如TLC555的555定时器可以代替微处理器,从而在实现LED电流精确控制的同时降低系统成本,其与输入电压、温度和LED正向压降无关。
例如,TLC5917是一款专用LED驱动器,其控制八个独立的恒流电流阱。正常情况下,它要求一颗微处理器,以驱动四个数字输入信号。指令/OE(允许输出)激活和关闭IC.串行数据输入 (SDI) 数据在时钟(CLK)上升沿被时钟输入至IC的输入移位寄存器。移位寄存器中的数据在LE下降沿(锁闭)转入内部开/关锁存器中。当需要LED电流的简单LED开/关控制时,下列电路使用随处可见的555定时器,来代替微处理器控制。
图1:TLC555定时器代替LED驱动器的微处理器TLC5917输出可以驱动八个独立LED,或者也可以并联其输出以提高电流能力来驱动单个更高功率的LED.其内部电流设置寄存器具有默认启动值。这些值与Rext共同设置LED电流。在这种应用中,Rext将每个输出的电流设置为IOUT= 18.75A / Rext = 18.75A / 178 ohm = 0.105A.将所有输出并联连接,得到0.842 A的LED电流。
上电时,内部开/关锁存器默认将所有输出开或者关至"0",因此在输出开启以前这些锁存器必须被设置为"1".555定时器代替微处理器实现该功能。CLK和LED都同时连接至 555定时器的方波输出。在每个CLK上升沿,SDI数据被移位至TLC5917输入移位寄存器中。在LE的下降沿,该数据被锁存至开/关锁存器中。由于数据的转移和锁存发生在不同的时钟沿,因此CLK和LE引脚可以连接至相同输入时钟信号。通过硬连线/OE接地,IC被永久性地激活。SDI可连接至Vcc,以在上电时自动开启LED.这种连接"1s"连续计时,以开启所有输出。我们还可以将SDI连接至一个开关或者数字输入,以实现LED开/关控制。之后,可将SDI拉至Vcc,所有"1s"连续计时,从而开启输出。否则其将被拉至接地,所有"0s"连续计时以关闭输出。
555定时器的时钟速度决定了LED开关的快慢。每个LE下降沿将SDI数据锁存至另一个八内部开/关锁存器中时,八时钟脉冲期间LED电流在0-100%之间斜坡变化,从而开启或者关闭另一个八输出。图2显示了产生的阶梯状LED电流,其随每个连续 LE下降沿而增加和减少。即使是相对较慢的10 kHz时钟频率,也会产生一个仅为0.8mS的关-开和开-关过渡,我们人眼对此的感觉仅是一瞬间。利用非常慢的时钟频率可以实现逐渐开和关。将时钟频率设置为0.1Hz,可以在0.8秒时间内逐渐开启和关闭LED。
图2:10 kHz时钟频率时的LED开启和关闭情况
关键字:定时器 微处理器 LED驱动器
编辑:探路者 引用地址:低成本555定时器取代微处理器对LED驱动器的控制
推荐阅读最新更新时间:2023-10-12 22:30
基于PIC单片机实现音乐播放的实例程序
PIC单片机实现音乐播放的实例程序 ******************************** * PIC单片机实现音乐播放 * ********************************
源程序:
以下程序要用二个定时器资源,凡是有二个定时器的PIC单片机均可实现,该范例需要的MCU是MICROCHIP PIC16C62 INCLUDE "D:PICP16XX.EQU" ;该文件在MICROCHIP光盘中可找到 ;************************************************** #define BeepOut RC,4 ;******************
[单片机]
关于定时器时间的一点小感悟
就是关于定时时间的计算,有了一个大致的了解。 TIM6Init(10000, 7200); //初始化定时器 6,预装载值为 10000,预分频值为 7200,定时时间 10000/(72000000/7200)=1s 1 那这篇是想介绍另外一种,假如我定时10ms已经确定,我想做到计每个数用的时间是39(us),那么对应的重装载数值及分频值如何确定呢? (感想来源于通用定时器比较输出256级PWM…) 总共10ms,每个数计39us,那么需要计10ms/39us=255个数。 此时对应的重装载值就是255了,然后对应的分频值为72*39-1。(72的含义是系统时钟,-1是C语言从0开始的)
[单片机]
LPC2214的PLL与定时器设置
1、振荡源选择: LPC2214的振荡器可工作在两种模式:从属模式和振荡模式。 从属模式下,外部 时钟 源信号从XTAL1脚输入,XTAL2管脚不连接。时钟源的频率限制在1MHz-50MHz。 振荡模式下,XTAL1和XTAL2外接晶振。晶振频率限制在1MHz-30MHz。 一般把振荡器频率称为Fosc,ARM处理器时钟频率称为cclk。如果PLL没有启动,Fosc和cclk相等。 2:PLL锁相环 设置 PLL接受的输入时钟频率范围为10MHz~25MHz。输入频率通过一个电流控制振荡器(CCO)倍增到范围10MHz~60MHz。倍频器可以是从1到32的整数(实际上,由于CPU最高频率的限制,LPC2114/2124
[单片机]
正点原子STM32学习笔记——通用定时器基本原理
以下描述适用于整个STM32FM10xxx系列。 本文依据《STM32中文参考手册_V10》 STM32 通用定时器简介 STM32 的通用定时器是一个通过可编程预分频器(PSC)驱动的 16 位自动装载计数器(CNT)构成。STM32 的通用定时器可以被用于:测量输入信号的脉冲长度(输入捕获)或者产生输出波形(输出比较和 PWM)等。 使用定时器预分频器和 RCC 时钟控制器预分频器,脉冲长度和波形周期可以在几个微秒到几个毫秒间调整。STM32 的每个通用定时器都是完全独立的,没有互相共享的任何资源。 STM3 的通用 TIMx (TIM2、TIM3、TIM4 和 TIM5)定时器功能包括: 1)16 位向上、向下、向上
[单片机]
恩智浦推出新型LCD显示器背光用LED驱动器UBA3077
该驱动器适用于多通道应用,为日渐成为电视和计算机显示器主流背光源的LED应用以及一般LED照明的普及化提供强大支持。
恩智浦UBA3077采用CMOS50电源管理(Power Management, PM)制程,特别针对数字环境中的高电压整合所设计,将电源特性与复杂的数字处理技术完美结合,并提供一流的性能。
UBA3077由三个独立通道所组成,各自整合其升压转换器和电源,使应用设计不受因LED灯串电压不相配所导致的额外散热的影响。此外,UBA3077采用HVQFN40封装,可透过PCB达到良好散热。
UBA3077为升压转换器和电源采用整合式MOSFET,协助设计人员缩小应用尺寸并降低
[电源管理]
STM32单片机的通用定时器
STM32中的定时器有多种,按功能分成2个高级控制器定时器,4个普通定时器,2个基本定时器,2个看门狗定时器,1个系统滴答定时器SysTick。 定时器的关键是定时时间的计算。比如用定时器控制继电器的开关的时候,需要延时一段时间才关闭或者开启,这时候离不开定时器定时。 通用定时器定时时间计算。1秒中断的基本实现: 通用定时器模块的入口时钟经过分频得到计数器的时钟,用CK_CNT表示,预分频器的系数为:TIMx_PSC,当TIMx_PSC=0时,表示不分频,=1时,2分频。以此类推。 公式为:CK_CNT=fclk_PSC/(PSC +1),其中PSC最大为65535. 其次是TIM5计数器的计数值的设置,TIM
[单片机]
SAM4E单片机之旅——2、LED闪烁之轮询定时器
之前我们使用空循环,达到了延迟的目的,但是这样子的延迟比较不精确。现在就使用实时定时器(RTT)来进行更为精确的计时。RTT虽然不是特别通用,在某些单片机上可能没有,但它较为简单。 RTT内部有一个计数器,并且可以配置这个计数器的时钟。通过配置以及计算,就可以得出经过一段时间后,该计数器的增加值。和之前一样,我们使用空循环来完成延迟,只是延迟退出的条件变为“计数器增加了一个特定的值”。 一、 RTT配置 为实现这个功能,需要配置的主要就是分频数了。RTT的时钟可以选择对慢时钟(SCLK,32.768 kHz)分频,或直接使用1 Hz的RTC时钟。为使LED能进行较为快速的闪烁,在这里就不能使用1 Hz的时钟了。RTT_MR的低
[单片机]
更改STM32定时器周期后的输出疑问分析
他先将STM32某定时器计数周期设为0xff,单向递增计数模式,OC比较值设为0x7F。 在某时刻将新的计数周期0x7F与比较值0x3F加载到影子寄存器。 当正在进行的一个周期结束后,经示波器测量确实可以看到其下一个周期发生变化,但其周期明显与预设值对应不上! 再次经过一个周期,定时器才会按照预设值稳定输出。 以上是咨询者不算很清晰的描述【其实咨询TIMER问题最好配上时序图】,但可以了解到他要做的事情就是在ARR=0xff,ccr=0x7F的PWM输出状态下,于某时刻赋予ARR和CCR新值以改变输出波形。 事情不算复杂,疑点就是为什么需要2个周期延时后才能有基于新配置的稳定输出。 【他这里说的2个周期显然不清楚到底指的前
[单片机]