打印
[STM32F1]

如何用STM32驱动LED指示灯?

[复制链接]
6657|26
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 紫阳真人 于 2018-4-9 09:43 编辑

用单片机点亮LED无非就是LED串联一个电阻,设置高低电平就好了。但是现在问题来了,我现在有20个LED,12个IO口,考虑问题就不这么简单了,既要考了IO数量问题,又要考虑功耗问题,然后我想到了74HC595。
但是用它去直接驱动也会使芯片承受很大的功率(每个LED5mA,全部点亮就是承受40mA,总限流50mA,从设计稳健角度考虑或许是不适合的)。
如下图,这是电路示意。或者每个LED加个三极管去驱动,这样又太复杂,除此之外我没有其他解决方案了,还请大神们支招,拜谢!




沙发
huangcunxiake| | 2018-4-8 19:35 | 只看该作者
静态显示?

使用特权

评论回复
板凳
huangcunxiake| | 2018-4-8 19:35 | 只看该作者
静态显示好像不可以吧。动态的不碍事。

使用特权

评论回复
地板
mmuuss586| | 2018-4-8 22:56 | 只看该作者
电阻串大些功耗就低了;

使用特权

评论回复
评论
紫阳真人 2018-4-9 09:45 回复TA
怕亮度不够 
5
紫阳真人|  楼主 | 2018-4-9 09:44 | 只看该作者

是的,问题已经修改,没138的事,就是要点亮任意数量的LED

使用特权

评论回复
6
ayb_ice| | 2018-4-9 09:48 | 只看该作者
有那么灯要点亮,功耗自然摆在那里,

使用特权

评论回复
7
fengfeng的恒| | 2018-4-9 11:04 | 只看该作者
用动态扫描吧,用3个三极管带3行,1片ULN2003做列,相当于有7列,3*7=21个LED,用了3+7=10个IO口,电流功耗都没问题。你百度一下ULN2003就知道了。

使用特权

评论回复
8
xdkun| | 2018-4-9 11:17 | 只看该作者
动态显示,2路三极管加2个限流电阻,一个限流电阻可以管10个灯,10个端口各接2路的一个灯,动态显示没问题的

使用特权

评论回复
9
xdkun| | 2018-4-9 11:17 | 只看该作者
一个led一个电阻有点多于

使用特权

评论回复
10
wfl102824| | 2018-4-9 13:35 | 只看该作者
SM16126D,带恒流驱动的,连串联的电阻都不需要,只需一个恒流电阻,一个芯片输出16路

使用特权

评论回复
11
Prry| | 2018-4-9 22:15 | 只看该作者
lp55231,值得你拥有。
https://blog.csdn.net/qq_20553613/article/details/78933482

使用特权

评论回复
12
紫阳真人|  楼主 | 2018-4-9 22:16 | 只看该作者
fengfeng的恒 发表于 2018-4-9 11:04
用动态扫描吧,用3个三极管带3行,1片ULN2003做列,相当于有7列,3*7=21个LED,用了3+7=10个IO口,电流功耗 ...

ULN2003是5V的TTL,我用3.3V控制不好吧

使用特权

评论回复
13
紫阳真人|  楼主 | 2018-4-9 22:25 | 只看该作者
wfl102824 发表于 2018-4-9 13:35
SM16126D,带恒流驱动的,连串联的电阻都不需要,只需一个恒流电阻,一个芯片输出16路 ...

这个厉害,兼容聚积公司的 MBI5026,东芝的 TB62726

使用特权

评论回复
14
紫阳真人|  楼主 | 2018-4-9 22:29 | 只看该作者
xdkun 发表于 2018-4-9 11:17
动态显示,2路三极管加2个限流电阻,一个限流电阻可以管10个灯,10个端口各接2路的一个灯,动态显示没问题 ...

这个成本最低,不错

使用特权

评论回复
15
紫阳真人|  楼主 | 2018-4-9 22:37 | 只看该作者
Prry 发表于 2018-4-9 22:15
lp55231,值得你拥有。
https://blog.csdn.net/qq_20553613/article/details/78933482

非常不错,就通道少了点,收藏

使用特权

评论回复
16
fengfeng的恒| | 2018-4-10 09:07 | 只看该作者
紫阳真人 发表于 2018-4-9 22:16
ULN2003是5V的TTL,我用3.3V控制不好吧

3.3V没问题的,如果不是兼顾电流问题,都直接接IO口了。20个LED同时电流,20*5=100mA,单片机IO受不了。

使用特权

评论回复
17
紫阳真人|  楼主 | 2018-4-10 10:33 | 只看该作者
fengfeng的恒 发表于 2018-4-10 09:07
3.3V没问题的,如果不是兼顾电流问题,都直接接IO口了。20个LED同时电流,20*5=100mA,单片机IO受不了。 ...

初步计划用TB62726,可以控制16路,其余的直接IO,操作方便

使用特权

评论回复
18
紫阳真人|  楼主 | 2018-4-10 22:15 | 只看该作者
用TB62726,可以控制16路,其余的直接IO。
这种在控制面板上的LED,抗静放电需要做些什么吗,总感觉有风险,特别是IO直接驱动的

使用特权

评论回复
19
xcvista| | 2018-4-11 00:22 | 只看该作者
TPIC6B595 可以承受大电流,使用起来和 74HC595 一样。

使用特权

评论回复
20
lihui567| | 2018-4-11 08:39 | 只看该作者
本帖最后由 lihui567 于 2018-4-11 08:53 编辑

用专用LED驱动芯片etk6201

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:必须有所突破

76

主题

528

帖子

10

粉丝