Pular para o conteúdo principal

Grove - Matriz de LED RGB c/Driver

pir

A matriz de LED RGB 8x8 é incrível para exibir imagens simples; 64 LEDs de pixel e 255 cores para cada pixel significam possibilidades quase infinitas. Porém, a fiação complicada da matriz é intimidante. Agora apresentamos a Grove - RGB LED Matrix w/Driver para você; deixe toda a fiação e soldagem complexas e variáveis para trás, apenas um único conector Grove para controlar facilmente a matriz de LED RGB 8x8. Incrível? Experimente você mesmo e vai adorar.

pir

Versão

Versão do ProdutoMudançasData de Lançamento
Grove - RGB LED Stick (10 WS2813 Mini)InicialDez 2018

Recursos

  • 8x8 pixels, RGB 255 cores
  • MCU integrado
  • ±1%(típ.) de precisão de corrente do LED entre canais
  • Suporte para exibição de imagens personalizadas

Especificação

ItemValor
Tensão de Operação3.3V / 5V
Temperatura de Operação-40℃ ~ +85℃
InterfaceI2C
Endereço I2C0x65
TamanhoC: 40mm L: 40mm A: 21mm
Peso17.3g
Tamanho da EmbalagemC: 120mm L: 100mm A: 33mm
Peso Bruto28g

Aplicações Típicas

  • Exibição simples de imagens
  • Brinquedos

Visão Geral do Hardware

Pinagem

pir

pir


Interface Grove

Usamos a interface I2C para controlar a matriz de LED:

GND: conecte este módulo ao GND do sistema
VCC: você pode usar 5V para este módulo
SDA: dados seriais I2C
SCL: clock serial I2C

pir


Módulo DC-DC

Usamos o MP-2155 para fornecer uma tensão estável de 3,3V para o MCU e para o chip driver de LED.

pir


Interface de Download de Firmware

Conecte aos pinos SDA e SCL; funciona como UART ao fazer o download do firmware.

pir


Driver de LED

O MY9221 é um driver de LED APDM (modulação adaptativa de densidade de pulso) de corrente constante com 12 canais (R/G/B x 4). Como este módulo é uma matriz 8x8, precisamos de canais de saída RGB x8; portanto, usamos dois MY9221.

pir

pir


Matriz de LED 8x8

Usamos 64 LEDs KTR-3528RGB para formar uma matriz de LED 8x8

pir

Usamos o sinal V para seleção de coluna e o sinal RGB para seleção de linha.
Nomeamos os LEDs por D, D1 - D64. R1/G1/B1 - R8/G8/B8 são acionados por dois MY9221, V1 - V8 é controlado pelo chip 74HC183PW. Se todos os LEDs estiverem desligados, V1 - V9 deve ser puxado para nível baixo por padrão, e todas as linhas de canal RGB serão todas puxadas para nível alto.

por exemplo.

D8 está na primeira linha, oitava coluna. Se quisermos deixar o D8 Verde-255, devemos colocar V8 em nível alto, e colocar R1/B1 em nível alto, puxar G1 para o terra. Então apenas o LED verde acenderá, você verá o D8 ficar verde puro.

Plataformas Suportadas

ArduinoRaspberry Pi

pir

pir

cuidado

As plataformas mencionadas acima como compatíveis são uma indicação da compatibilidade de hardware ou teórica do módulo. Na maioria dos casos, fornecemos apenas biblioteca de software ou exemplos de código para a plataforma Arduino. Não é possível fornecer biblioteca de software / código de demonstração para todas as possíveis plataformas de MCU. Portanto, os usuários têm que escrever sua própria biblioteca de software.

Primeiros Passos

Brincar com Arduino

Hardware

Materiais necessários

Seeeduino V4.2Base ShieldGrove - RGB LED Matrix w/Driver

pir

pir

pir

Compre AgoraCompre AgoraCompre Agora
nota

1 Conecte o cabo USB com cuidado, caso contrário você pode danificar a porta. Use o cabo USB com 4 fios internos; o cabo de 2 fios não pode transferir dados. Se você não tiver certeza sobre o cabo que possui, pode clicar aqui para comprar.

2 Cada módulo Grove vem com um cabo Grove quando você compra. Caso você perca o cabo Grove, pode clicar aqui para comprar.

important

1. Se você usar o Arduino UNO como placa-mãe, é recomendado usar a fonte de alimentação DC. Caso contrário, a ondulação máxima do VCC pode exceder 100mV. Se você usar o Seeeduino V4.2 como placa-mãe, não precisa conectar a alimentação DC.

2. Hot swap não é suportado.

  • Passo 1. Conecte o Grove - RGB LED Matrix w/Driver à porta I2C do Grove-Base Shield.

  • Passo 2. Conecte o Grove - Base Shield ao Seeeduino.

  • Passo 3. Conecte o Seeeduino ao PC por meio de um cabo USB.

nota

Se não tivermos o Grove Base Shield, também podemos conectar este módulo diretamente ao Seeeduino como abaixo.

SeeeduinoCabo GroveGrove - RGB LED Matrix w/Driver
GNDPretoGND
5V or 3.3VVermelhoVCC
SDABrancoSDA
SCLAmareloSCL

Software

nota

Se esta é a primeira vez que você trabalha com Arduino, recomendamos fortemente que veja Getting Started with Arduino antes de começar.

  • Passo 1. Baixe a biblioteca Seeed_RGB_LED_Matrix do Github.

  • Passo 2. Consulte How to install library para instalar a biblioteca para o Arduino.

  • Passo 3. Reinicie a Arduino IDE. Abra o exemplo; você pode abri-lo das seguintes três maneiras:

    1. Abra-o diretamente na Arduino IDE pelo caminho: File --> Examples --> Seeed_RGB_Led_Matrix --> display_emoji.

    pir

    1. Abra-o no seu computador clicando em display_emoji.ino, que você pode encontrar na pasta XXXX\Arduino\libraries\Seeed_RGB_LED_Matrix-master\examples\display_emoji, em que XXXX é o local onde você instalou a Arduino IDE.

    pir

    1. Ou, você pode simplesmente clicar no ícone

    pir

    no canto superior direito do bloco de código para copiar o código a seguir para um novo sketch na Arduino IDE.

#include "grove_two_rgb_led_matrix.h"

#ifdef ARDUINO_SAMD_VARIANT_COMPLIANCE
#define SERIAL SerialUSB
#else
#define SERIAL Serial
#endif


#define DISPLAY_COLOR 0X11


void waitForMatrixReady()
{
delay(1000);
}

GroveTwoRGBLedMatrixClass matrix;
void setup()
{
Wire.begin();
SERIAL.begin(115200);
waitForMatrixReady();
uint16_t VID = 0;
VID = matrix.getDeviceVID();
if(VID != 0x2886)
{
SERIAL.println("Can not detect led matrix!!!");
while(1);
}
SERIAL.println("Matrix init success!!!");

}

void loop()
{
for(int i=0;i<35;i++)
{
matrix.displayEmoji(i,5000,true);
delay(5000);
}
}
nota

O arquivo da biblioteca pode ser atualizado. Este código pode não ser aplicável ao arquivo de biblioteca atualizado, portanto recomendamos que você use os dois primeiros métodos.

  • Passo 4. Faça o upload do demo. Se você não sabe como fazer o upload do código, verifique How to upload code.
success

Se tudo correr bem, agora você poderá ver a matriz de LEDs exibindo:

pir

DIY

Agora vamos falar sobre DIY.

nota

Nesta versão do firmware, se você quiser fazer o DIY da sua própria imagem com a serial do UNO, você precisa modificar o arquivo do Arduino. Se você usar mega ou lotus, a alteração não será necessária.

Localize a pasta de instalação do Arduino xxxxx\Arduino\hardware\arduino\avr\libraries\Wire\src, abra o arquivo Wire.h

altere

#define BUFFER_LENGTH 32

para

#define BUFFER_LENGTH 128

Em seguida, localize a pasta de instalação do Arduino xxxxx\Arduino\hardware\arduino\avr\libraries\Wire\src\utility, abra o arquivo twi.h.

altere

#define TWI_BUFFER_LENGTH 32

para

#define TWI_BUFFER_LENGTH 128

Vamos começar o DIY.

  • Passo 1. Baixe o editor de imagens, é um arquivo zip, descompacte-o.

  • Passo 2. Encontre o index.html na pasta doc-->doc, clique duas vezes para abri-lo.

pir

  • Passo 3. Crie suas próprias imagens; quando terminar uma, clique em Insert no painel de controle, então você pode editar outra. Quando terminar toda a sequência de imagens, você pode copiar o código na área de código.

  • Passo 4. Substitua o seguinte bloco de código, linha 9 unit64_t example[] pelo seu próprio código.

#include "grove_two_rgb_led_matrix.h"

#ifdef ARDUINO_SAMD_VARIANT_COMPLIANCE
#define SERIAL SerialUSB
#else
#define SERIAL Serial
#endif

uint64_t example[] = {

0xffff5e5e5e5effff,
0xff5effffffff5eff,
0x5eff5effff5eff5e,
0x5effffffffffff5e,
0x5eff5effff5eff5e,
0x5effff5e5effff5e,
0xff5effffffff5eff,
0xffff5e5e5e5effff,

0xffff29292929ffff,
0xff29ffffffff29ff,
0x29ff29ffff29ff29,
0x29ffffffffffff29,
0x29ff29292929ff29,
0x29ffffffffffff29,
0xff29ffffffff29ff,
0xffff29292929ffff,

0xffff00000000ffff,
0xff00ffffffff00ff,
0x00ff00ffff00ff00,
0x00ffffffffffff00,
0x00ffff0000ffff00,
0x00ff00ffff00ff00,
0xff00ffffffff00ff,
0xffff00000000ffff
};

void waitForMatrixReady()
{
delay(1000);
}

GroveTwoRGBLedMatrixClass matrix;
void setup()
{
Wire.begin();
SERIAL.begin(115200);
waitForMatrixReady();
uint16_t VID = 0;
VID = matrix.getDeviceVID();
if(VID != 0x2886)
{
SERIAL.println("Can not detect led matrix!!!");
while(1);
}
SERIAL.println("Matrix init success!!!");

}

void loop()
{
for (int i=0;i<3;i++) {
matrix.displayFrames(example+i*8, 200, false, 1);
delay(500);
}
}
success

Se tudo correr bem, agora você poderá ver a matriz de LEDs exibindo:

pir

Visualizador de Esquemático Online

Recursos

Suporte Técnico & Discussão de Produto

Obrigado por escolher nossos produtos! Estamos aqui para fornecer a você diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

Loading Comments...