使用4位数7段LED


9

我有一个7段显示器,其中有4位数字。我将需要使用什么?单个微控制器可以处理该操作吗?我的意思是PIC16F690 ...我也看到了驱动这类显示器的MAXIM芯片...是否绝对需要?

这是数据表中的图片,我不知道为什么有2个引脚图? 在此处输入图片说明 在此处输入图片说明

这是数据表的链接

Answers:


16

这两个示意图是显示器的两个版本,顶部为公共阴极,底部为公共阳极。我假设您具有通用阴极版本。

您通过8个串联电阻将段A..G,DP连接到微控制器的8个I / O引脚。将引脚驱动为高电平将点亮所选数字上的LED。要选择4位中的任意一位,您可以通过NPN晶体管将相应的公共阴极设为低电平,然后再通过电阻从I / O引脚驱动该晶体管。

在此处输入图片说明

如果电源电压为5 V,并且使用的是红色LED,则可以使用150Ω电阻,而不是330Ω还将晶体管的基极电阻值减小到2.2kΩ,并为晶体管使用例如BC337

要驱动全屏显示,您首先要通过将其晶体管驱动为高电平来使其引脚12为低电平,然后为该数字段设置I / O。一段时间后,您将针脚12和段断开,然后将9接通,并再次接通第二个数字段。等等。如果您在不到2.5 ms的时间内从一位数字转到另一位数字,则整个显示将以10 ms或100 Hz的频率循环,这足以避免出现明显的闪烁。

您可以使用Maxim驱动程序,例如MAX7219,但它是Damn Expensive™:在Digikey以1秒钟为12.80美元。这样做的好处是,它可以为您处理多路复用,因此您只需将其与4位数字的段数据一起加载即可。它还具有软件亮度控制。

我检查了PIC16F690的数据表,与其他微控制器不同,其I / O似乎无法提供20 mA的电流(这令人失望)。因此,在端口2上也需要晶体管:

在此处输入图片说明

R1是端口2上的电阻之一。因此,您将Q1和R2插入它们之间,并对8个分段中的每一个重复一次。注意,Q2是PNP!任何通用的PNP晶体管都可以。


仅一件事,您是否建议使用像UNL2803这样的继电器驱动器代替晶体管?
Sean87

差不多一样。2803具有钳位二极管,但这仅是切换继电器或电动机的优势。如果您购买100台BC337(它们总是有用的),其中4台比2803便宜。不幸的是,没有与2803等效的PNP,因此无论如何您都必须使用晶体管。顺便说一句,是您的显示器是我的答案中的公共阴极,还是公共阳极。如果是后者,则您将需要8个NPN用于分段,那么2803可能是一个更好的选择。
stevenvh 2012年

有了这个主意,幸运的是它是普通阳极,我周围有一些2803芯片,然后我将使用它们。再次感谢。
Sean87
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.