如何使用Arduino和LED矩阵制作滚动文本招牌

如何使用Arduino和LED矩阵制作滚动文本招牌,第1张

  展示广告在营销中发挥了非常重要的作用,并且有几种广告方法,例如报纸,海报,发光招牌等。但是,由于其可靠性和优势,数字LED显示板如今越来越受欢迎。尽管它们有些昂贵,但它们仍然耐用且可定制,就像在需要时可以轻松更改广告文本,并且也可以在任何公共场所用作数字通知板。

  在本教程中,我们将使用32x16 LED点矩阵显示模块,该模块也称为P10 LED显示模块,使用Arduino Uno显示滚动文本。可以将P10模块级联成构建广告板的任何规模。

  所需组件

  Arduino UNO-1

  32*16 P10 LED显示模块1

  16针FRC连接器1

  5V DC,3安培SMP

  连接器

  P10 LED矩阵模块的工作

如何使用Arduino和LED矩阵制作滚动文本招牌,poYBAGMDMb6AGXOQAAiH26QYC4M450.png,第2张

  P10 LED显示模块最 适合设计任何尺寸的室外或室内LED显示广告板。该面板总共有512个高亮度LED安装在塑料外壳上,旨在最佳显示结果。任何数量的此类面板都可以在任何行和列结构中组合,以设计有吸引力的LED招牌。

  32*16模块的大小意味着每行中有32个LED,每列中有16个LED。因此,每个模块单元中总共有512个LED数。

  P10 LED矩阵模块的功能:

  亮度:3500-4500nits

  最大功耗:20W

  电压输入:DC 5V

  IP65防水

  1W像素配置

  高视角

  高对比度

  P10显示模块的引脚描述:

如何使用Arduino和LED矩阵制作滚动文本招牌,poYBAGMDMbqAaY2nAAgYdBSgEY4687.png,第3张

  启用:该引脚用于通过对其进行PWM脉冲来控制LED面板的亮度。

  A,B:这些称为多路复用销。他们采用数字输入以选择任何多重行。

  Shift Clock(CLK),商店时钟(SCLK)和数据:这些是正常的移位寄存器控制引脚。在这里,使用了74HC595的移位寄存器。

如何使用Arduino和LED矩阵制作滚动文本招牌,poYBAGMDMbWAFiEJAACR4KTHUfk336.png,第4张

  电路原理图

  下面给出了带有Arduino的P10模块的完整电路图:

如何使用Arduino和LED矩阵制作滚动文本招牌,pYYBAGMDMbCAG9aUAAG8X_Mcxa4630.png,第5张

  根据销映射,Arduino uno和P10显示模块互连如下:

如何使用Arduino和LED矩阵制作滚动文本招牌,pYYBAGMDMayAP1a4AAAQ3DLATF0752.png,第6张

如何使用Arduino和LED矩阵制作滚动文本招牌,pYYBAGMDMaiAQWfJAAmpg2IVq9Y475.png,第7张

  注意:将P10模块的功率终端分别连接到5V DC SMP。建议将5V,3 AMP DC电源连接到P10 LED模块的单个单元。如果您打算连接更多数量的模块,请相应地增加SMP的评级。

  P10 LED模块编程与Arduino

  成功完成硬件设置后,现在该对Arduino进行编程了。本教程末尾给出了这10个LED显示Arduino以及视频的完整代码。代码的逐步描述如下。

  首先,包括程序中的所有因库。在这里,我们将“ DMD.H”库用于P10 LED *** 作,请从此处下载此库,然后将其安装在Arduino IDE中。之后,包括用于中断任务的“ TImerOne.h ”的库。该库可以从这里下载。

  然后,包括所有必需的字体库,在我们的情况下,我们使用“ Arial Black Font”进行显示。

 

#include 
#include 
#include 
#include“ systemfont5x7.h”
#include“ arial_black_16.h”

 

在下一步中,定义LED显示板的行数和列数。在我们的情况下,我们仅使用一个模块,因此行值和列值将为1。然后定义字体名称-Arial_black_16,用于显示在显示板上的文本滚动。

 

#Define Row 1
#Define第1列
#define font arial_black_16
DMD LED_MODULE(行,列);

 

函数scan_module(),通过SPI终端检查来自Arduino端的任何传入数据。如果是,那么它将触发一个中断引脚进行某些事件。

 

void scan_module()
{
  LED_MODULE.SCANDISPLAYBYSPI();
}

 

内部设置(),初始化计时器,然后将中断连接到函数scan_module。功能ClearScreen(true)用于设置所有像素最初都关闭以清除显示板。

 

无效设置()
{
  TImer1.IniTIalize(2000);
  TImer1.attachinterrupt(scan_module);
  led_module.clearscreen(true);
}

 

然后,要在模块中显示字符串,请使用selectfont()函数选择字体,然后使用drawmarquee()函数在显示屏中打印字符串消息“欢迎到电路摘要” 。

 

   LED_MODULE.SELECTFONT(FONT);
   LED_MODULE.DRAWMARQUEE(“欢迎来到电路摘要”,25,(32 *行),0);

 

最后,在LED显示板上滚动文本,使用一定时间段内将整个消息从右向向左转移。

 

长启动= millis();
    长时间=开始;
    boolean flag = false;
    while(!flag)
    {
      if((timming + 20)

 

如何使用Arduino和LED矩阵制作滚动文本招牌,pYYBAGMDMaKAORwwAALODyXhfA4194.png,第8张

  因此,这就是您可以使用Arduino和LED矩阵制作滚动文本招牌的方式。

#include

#include

#include

#include“ systemfont5x7.h”

#include“ arial_black_16.h”


#define low 1

#define列1

#define font arial_black_16


DMD LED_MODULE(行,列);


void scan_module()

{

led_module.scandisplaybyspi();

}


void setup()

{

timer1.initialize(2000);

timer1.attachinterrupt(scan_module);

led_module.clearscreen(true);

}

void loop()

{

led_module.SelectFont(font);

LED_MODULE.DRAWMARQUEE(“欢迎来到电路摘要”,25,(32 *行),0);

长启动= millis();

长时间=开始;

boolean flag = false;

while(!flag)

{

if(((timming + 20)
{

flag = led_module.stepmarquee(-1,0);

timming = millis();

}

}

}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2999098.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-26
下一篇 2022-09-26

发表评论

登录后才能评论

评论列表(0条)

保存