串行七段式LED显示屏护罩的介绍

电子说

1.3w人已加入

描述

与LCD显示器相比,七段LED显示器更亮,更吸引人,并且提供了较远的观看距离和更宽的视角。该项目描述了用于Arduino Uno或兼容板的串行七段LED显示护罩。屏蔽层由八个MAX6190芯片驱动的八个0.56英寸的七段显示器组成。屏蔽层还具有一个光敏电阻(LDR),以对LED显示屏实施自适应亮度控制。 LDR输出可以馈入Arduino的A0或A1模拟输入通道以读取周围的照明水平。然后,Arduino可以使用该信息来调整LED显示屏的亮度。本文的后半部分还提供了演示代码和Eagle CAD文件。

LED显示屏

串行七段式LED显示屏护罩

MAXIM的MAX7219显示驱动器芯片提供3线串行(SPI)接口,可驱动多达八个七段LED显示(共阴极型),芯片上包括BCD解码器,多路扫描电路,段和数字驱动器, 8×8静态RAM存储数字值。所有LED的最大段电流通过外部电阻设置。但是,该设备还能够通过软件对LED段进行16级亮度控制。有关MAX7219内部框图和操作的更多详细信息,请阅读我先前的项目串行4位LED显示屏以及 Maxim的数据手册。

显示屏防护罩功能

由八行七段式LED显示屏(0.56英寸高度)组成,两行四位数字排列。

带并联跳线的接头插针(1),用于连接将MAX7219的DIN,CLK和LOAD引脚连接到Arduino引脚。使用跳线,您可以将DIN连接到引脚8或2,将CLK连接到引脚9或3,将LOAD连接到引脚10或4。

用于检测环境光水平的LDR电路。 LDR输出可以通过跳线J2连接到A0或A1引脚。

这些功能在下图中突出显示。

LED显示屏

串行7段LED显示屏屏蔽功能

LED显示屏

跳线选择Arduino I/O引脚用于DIN,CLK和LOAD MAX7219的引脚

自适应亮度控制

基本上,自动亮度调节是一种闭环系统,能够评估环境光并相应地调节显示器的亮度。在该屏蔽层中,通用LDR和固定值电阻器(10K)串联连接在电源和接地引脚之间,以创建分压网络。在明亮的照明条件下,典型LDR的电阻小于1KΩ。在极端黑暗的条件下,其电阻可能高达数百KΩ。因此,跨过10K电阻器的电压会随着周围的照度成比例增加。对于给定的设置,10K电阻两端的电压可以从0.1V(在黑暗条件下)到超过4.0V(在非常明亮的照明下)之间变化。可以对Arduino进行编程,以通过其模拟输入通道(A0或A1)读取该模拟电压,然后将适当的信号发送至MAX7219驱动器,以调整七段LED显示屏的亮度。我已经在上一篇文章中详细解释了该主题。

测试代码

该代码通过读取LDR输出来检测环境光线条件通过A0通道并调节LED显示屏的亮度。显示屏仅显示0-7之间的数字。您将需要安装 LedControl 库。

/* Testing SPI 7-Segment LED display shield

* Uses LedControl library

* Demonstrates the use of LDR for auto brightness adjustment.

*/

#include “LedControl.h”

// Arduino Pin 8 to DIN, 9 to Clk, 10 to LOAD, no.of devices is 1

LedControl lc=LedControl(8,9,10,1);

int adc_value, brightness;

void setup()

{

// Initialize the MAX7219 device

lc.shutdown(0,false); // Enable display

lc.setIntensity(0,8); // Set brightness level (0 is min, 15 is max)

lc.clearDisplay(0); // Clear display register

}

void loop()

{

adc_value = analogRead(A0);

brightness = adc_value/65; // Divide by 65 to get Maximum Brightness 15.

lc.setIntensity(0,brightness);

// Display 1 through 8

for(int i=0; i《8; i++){

lc.setDigit(0,i,i,false);

}// End i

delay(500);

}

使温度/湿度计显示自动调节亮度

您只需将DHT22传感器插入Arduino屏蔽接头(引脚GND,13、12、11)即可制成温度/湿度计,如下所示。 DHT22引脚的GND,数据和VCC连接到Arduino的GND,D12和D11引脚。然后,您只需向D11引脚写入“逻辑1”即可为DHT22传感器供电。

LED显示屏

制造一个具有自适应亮度控制的基于DHT22的简单温度/湿度计

LED显示屏

要进行测试,您可以将DHT22直接插入Arduino接头并通过I/O引脚为传感器供电。

责任编辑:wv

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分