Arduino 8×8 LED矩阵

在这个项目中,我们将学习LED矩阵显示器和Arduino 8×8 LED矩阵接口上的两个不同项目。第一个项目将是Arduino和8x8 LED矩阵之间的简单接口,以显示信息(即使可以显示滚动信息和图像),第二个项目将是通过Android设备控制8×8 LED矩阵的高级项目。

LED矩阵是一个二维LED阵列,可以用来显示符号、字符甚至图像。根据LED在矩阵中的方向,可以有两种类型的LED矩阵。它们是共排阳极和共排阴极。

LED矩阵模块是常用的显示设备之一,并且用于电子显示面板和通知系统等主要应用。

选择下一组Arduino项目,你想学习在电子shub Arduino项目»

项目1:简单的Arduino LED矩阵接口

电路图

Arduino LED矩阵

Arduino-LED矩阵

组件的要求

  • Arduino Uno Board [在这里买
  • LED矩阵- 8 x 8 LED点阵
  • IC1 - MAX 7219
  • R1 - 10 kΩ
  • C1 - 0.1μF
  • C2 - 10µf

组件描述

Arduino Uno.

该项目是基于Arduino Uno微控制器板。Arduino Uno上有14个数字输入/输出引脚,我们只需要3个引脚就可以实现这个项目。

一个引脚向LED显示驱动器IC(MAX 7219)提供时钟信号,而另一个引脚用于将串行数据传输到IC以在LED矩阵上显示。必须在程序中适当提及相应的引脚。

LED矩阵

本项目采用8 × 8 LED矩阵显示器显示信息。LED矩阵有不同的风格,如单色,双色,多色或RGB LED矩阵。

它们也可用于不同的尺寸,如5×7,8 x 8,16 x 16,32 x 32等。基于矩阵中的LED的布置,LED矩阵可以是普通行阳极或公共行阴极。

在情况下,普通行阳极类型LED矩阵,电流源(高或正电压)给行A-D和电流汇(低或负电压或地)给列1-4。

常见的阳极

在公共行阴极型LED矩阵的情况下,电流源(高或正电压)被给予列1-4,并且电流槽(低或负电压或地)被给予行A-D。

常见的阴极

本项目使用的LED矩阵是一种普通的行阴极型LED矩阵。在开发项目时,必须知道LED矩阵的类型,并编写相应的程序。

集成电路马克斯7219

LED矩阵有两种驱动方式。它们是并行的(每行或每列都发送并行数据)和串行的(数据串行发送,并使用集成电路将串行数据转换为并行数据)。

MAX 7219是具有串行输入和并联输出的普通阴极显示驱动器。它用于接口带有64个单独LED的微处理器和微控制器(例如8 x 8 LED矩阵有64个LED),七个段LED显示最多8位数或条形图显示。

如电路图所示,8 x 8 LED矩阵连接到MAX 7219,从Arduino板接收数据输入到MAX 7219。

笔记:

预连线MAX 7219和8 x 8 LED矩阵模组可在市场上。它们可以用于方便。

预连线MAX 7219和8 x 8 LED矩阵

在职的

该项目的目的是用8 x 8 LED矩阵接口Arduino UNO板以显示信息。

本项目即使使用单个8 × 8 LED矩阵,对应MAX 7219 IC,也可以将多个LED矩阵串联,实现长时间滚动显示。按电路图所示连接元件。系统的工作原理如下:

14个可用的数字输入/输出引脚中的3个用于控制显示驱动IC MAX 7219。MAX7219 IC上的3个引脚分别是时钟,数据输入和加载(或在max7221 IC的情况下的cs)。可以应用最大的时钟频率为10MHz。DIN (Data in)接受来自微控制器或Arduino板的串行数据。

长16位第一个8位(D0, D7)驾驶的列(赛格g和DP的MAX 7219 IC) LED矩阵和接下来的8位(D8 - D15)是驱动(挖鹿的MAX 7219 IC) LED矩阵的行。

负载引脚(或CS或芯片选择引脚在最大7221 IC的情况下)锁存串行输入数据在其上升边缘。

MAX 7219上的另一个重要销是ISET,它将峰值电流设置为段以驱动所有LED。它通过电阻(R1)连接,称为RSET。电容器滤除电源中的任何噪声。

当使用Arduino(通过程序)发送进来的串行数据时,将串行数据转换成段和数字,驱动LED矩阵的列和行。根据发送的数据,相应的led在矩阵上点亮并显示消息。

这里写的程序是用来滚动文本显示的。在一个8 x 8 LED矩阵上查看长时间滚动的数据可能很困难。因此,多个LED矩阵可以连接起来形成一个长矩阵。

没有。max7219集成电路的最大容量相当于8 x 8 LED矩阵。为了将显示扩展到多个LED矩阵,第一个MAX 7219的Data OUT (DOUT)引脚必须连接到第二个MAX 7219 IC的Data In (DIN)引脚。对于多个LED矩阵,这个过程必须继续。

(链条中LED矩阵的定位很重要。第一个LED矩阵必须放在链条的右侧。)

代码

请注意

  • 该程序使用了一个名为LedControl的库。这个库必须添加到Arduino IDE中,头文件LedControl.h必须包含在程序中。
  • 使用这个库文件可以集成多个MAX 7219 ICs,并提供滚动文本。图书馆可以从这里下载链接

项目2:Arduino 8X8 LED矩阵接口与Android手机

Arduino 8×8 LED矩阵接口系列的第二个电路是基于蓝牙通信和Android手机。在这个项目中,我们通过蓝牙通信将Arduino与Android手机进行接口,通过MAX7219将8×8 LED矩阵连接到Arduino,通过Android手机上的专用应用程序进行控制。

我们已经在之前的项目中看到了8×8 LED矩阵和MAX7219集成电路是如何连接的。因此,我将跳过这部分连接,继续讨论MAX7219 IC如何与Arduino接口。

但我没有提到一个典型的8×8 LED矩阵的引脚图在之前的电路。因此,为了实现这一点,下面的图像显示了8×8 LED矩阵的引脚。

Arduino 8x8 LED矩阵引脚图

您可以观察到,8×8 LED矩阵由16个引脚组成:8行和8列。通常,行与LED的阳极相关联,并且列与LED的阴极相关联。

电路图

Arduino 8x8 LED矩阵电路图

组件的要求

    • Arduino Uno.
    • MAX7219 IC板
    • 8×8 LED矩阵
    • HC-05蓝牙模块
    • Android手机安装了应用程序

电路设计

由于Arduino和MAX7219之间的通信基于SPI通信协议,我们所需要的是三个引脚Arduino(数据,时钟和芯片选择)。MAX7219 IC板的CS、CLK和DIN引脚连接到Arduino的10、11和12引脚。

正如我们使用Arduino和Android设备之间的蓝牙连接,HC-05蓝牙模块的RX和TX引脚连接到Arduino(引脚1和0)的TX和RX引脚。

通过Android应用控制8×8 LED矩阵

基于Android的设备的专用应用程序是为此项目设计的。已安装在移动电话上的应用程序的布局显示在以下图像中。

Arduino 8x8 LED Matrix Android App

该应用程序具有8×8个方格(每个相应于8×8 LED矩阵上的一个LED),重置按钮和断开按钮。触摸特定的方块将打开8×8 LED矩阵中的特定LED。

方形的颜色将变为红色,作为LED接通的指示。再次触摸正方形将关闭相应的LED,方形的颜色将恢复为灰色。

底部提供重置按钮,使用该按钮,您可以使用该按钮重置8×8 LED矩阵i.e.将关闭所有LED。断开按钮将断开与蓝牙断开连接。

请注意:利用手机蓝牙功能。因此,必须给予必要的许可。同时,HC-05蓝牙模块必须与设备(手机)配对。

下载Android应用程序

您可以在Android设备上下载并安装本项目使用的App。使用这个链接安装应用程序。

代码

应用程序

  • 基于Arduino的8 x 8 LED矩阵显示只使用了3个引脚的微控制器。因此,它可以用于显示信息是系统的一部分的应用程序中,其中微控制器的其他引脚可以用于其他外围设备。
  • LED矩阵是公交、火车站等公共场所信息显示的一种基本形式。
  • 多个LED矩阵可以组合形成大型显示器,并可用于显示多颜色的图像。

22日回复

      1. 最多7219芯片兼容8×8 LED矩阵常见阳极显示屏吗?我需要帮助,请与我分享MAX7219 + 8×8 LED矩阵常见阳极模块的示意图。谢谢你

  1. 为了控制使用应用程序,我必须复制的代码(代码没有应用程序或与应用程序代码)与库?

  2. 兄弟,我很高兴你做了这个伟大的工作,因为我的老师拒绝了我最近的项目的手机控制车辆使用蓝牙,但现在担心我可以买led模块,可以使用我以前的项目的旧组件,谢谢

  3. 我目前正在使用Android手机进行那个。我复制了代码和一切。我也能够使用应用程序将手机连接到HC-05,但事情是LED矩阵不会亮起。请帮忙!!

  4. 嗨,如何单独控制多个点阵矩阵?通过您所写的帖子,它似乎是多个显示屏将在每个显示器中显示同一件事

留下一个回复

您的电子邮件地址不会被公开。必需字段被标记

Electronicshub图标
<\/i>","library":""}}" data-widget_type="nav-menu.default">
Baidu