回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

【Arduino 动手做】RGB HexMatrix | 物联网时钟 简单

头像 驴友花雕 2025.06.14 4 0

HexMatrix 是一个包含许多三角形像素的 LED 矩阵。六个像素组合起来构成一个六边形。FastLED 库中的矩阵可以显示许多不同的动画。此外,我还设计了从 0 到 9 的数字,每个数字由 10 个段组成,并制作了一个物联网时钟。

补给品:
ESP8266 或 Arduino (Uno/Nano)
WS2811 LED(96个LED)
5V/2A电源
3D打印

步骤1:3D打印:
3D 打印所有给定的 3D 模型:点击此处获取 STL 文件和代码
使用白色 PLA 打印屏幕层。

步骤2:电路连接:
按照电路图所示进行所有连接。
GND~-Ve
输入电压~5V~+Ve
数据输入〜引脚2
还将电源线延伸至最后一个 LED 并连接,以防止 LED 两端的电压下降。

步骤3:注意:
如果您使用 Arduino 板,那么您只能显示动画,而不能显示时间。
如果您使用 ESP8266 板,那么我们可以在矩阵上显示时间和其他动画。

步骤4:组装:
将所有 LED 按照蛇形顺序排列。
将所有东西组装在一起。
将连接器焊接到微控制器板上,连接器取自 LED 线的另一端。

步骤5:编码:
点击此处获取代码
对于这个矩阵,我制作了三个代码 HexMatrix.ino、clock1.ino 和 clock2.ino。
HexMatrix 代码是在矩阵上显示动画的代码,它可以在任何微控制器板上运行。
Clock 和 clock2 代码仅在 ESP8266 板上运行。
HexMatrix.ino:

打开Arduino IDE中给出的代码。
在 Arduino IDE 中安装 FastLED 库。
选择板类型、端口并上传代码。
Clock1 和 Clock2 代码:

在 Arduino IDE 中打开代码。
在此代码中,我们可以根据颜色要求更改此值
//Digit color values in RGBint r=255;
int g=255;
int b=255;
//Background color values in RGB
int br=0;
int bg=20;
int bb=10;
输入Wifi名称和密码
const char* ssid    = "Wifi_Name";
const char* password = "Password";
输入您所在国家/地区的时区(印度 5:30=5.5,同样输入您的时区)
//Your time zone
int timezone = -5.5 * 3600;
选择板子类型为ESP8266,选择端口,上传代码。
除此之外,我们在 FastLED 示例中还有许多其他动画。

 

00.jpg
01.jpg
02.jpg
03.jpg
04.jpg
05.jpg
06.jpg
07.jpg
08.jpg
09.jpg
10.jpg

时钟代码

代码
#include <ESP8266WiFi.h>
#include <time.h>
#include "FastLED.h"

#if FASTLED_VERSION < 3001000
#error "Requires FastLED 3.1 or later; check github for latest code."
#endif

#define DATA_PIN    2
#define LED_TYPE    WS2811
#define COLOR_ORDER RGB
#define NUM_LEDS    96
#define BRIGHTNESS  255

CRGB leds[NUM_LEDS];

//Digits color values in RGB
int r=255;
int g=255;
int b=255;

const char* ESP_HOST_NAME = "esp-" + ESP.getFlashChipId();
//Your Wifi info
const char* ssid    = "Wifi_Name";
const char* password = "Password";

//Your time zone
int timezone = -5.5 * 3600;
int dst = 0;
   
WiFiClient wifiClient;

void connectWifi() 
{
  WiFi.begin(ssid, password);
  Serial.print("Connecting to ");
  Serial.println(ssid);
  while (WiFi.status() != WL_CONNECTED) 
  {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected!");
  Serial.println(WiFi.localIP());
  Serial.println();
}

void setup() {
  Serial.begin(115200);
  delay(500);
  connectWifi();
  Serial.println();
  Serial.println("\n\nNext Loop-Step: " + String(millis()) + ":");
  configTime(timezone, dst, "pool.ntp.org","time.nist.gov");
  FastLED.addLeds<LED_TYPE,DATA_PIN,COLOR_ORDER>(leds, NUM_LEDS)
    .setCorrection(TypicalLEDStrip)
    .setDither(BRIGHTNESS < 255);
  FastLED.setBrightness(BRIGHTNESS);
}


void loop()
{
    time_t now = time(nullptr);
    struct tm* p_tm = localtime(&now);
    Serial.print("-------------------------------------------------\n");
    Serial.print("Date & Time : ");
    Serial.print(p_tm->tm_mday);
    Serial.print("/");
    Serial.print(p_tm->tm_mon + 1);
    Serial.print("/");
    Serial.print(p_tm->tm_year + 1900);
    Serial.print(" ");
    int hour=p_tm->tm_hour;
    int minute=p_tm->tm_min;
    if(hour>12)
    {
      hour=hour-12;
    }
    Serial.print(hour);
    Serial.print(":");
    Serial.print(minute);
    Serial.print(":");
    Serial.println(p_tm->tm_sec);
    pride();
    if(hour==0||hour==12)
    {
      hour12();
    }
    if(hour==1)
    {
      hour1();
    }
    if(hour==2)
    {
      hour2();
    }
    if(hour==3)
    {
      hour3();
    }
    if(hour==4)
    {
      hour4();
    }
    if(hour==5)
    {
      hour5();
    }
    if(hour==6)
    {
      hour6();
    }
    if(hour==7)
    {
      hour7();
    }
    if(hour==8)
    {
      hour8();
    }
    if(hour==9)
    {
      hour9();
    }
    if(hour==10)
    {
      hour10();
    }
    if(hour==11)
    {
      hour11();
    }

    if(minute==0)
    {
      min0();
    }
    if(minute==1)
    {
      min1();
    }
    if(minute==2)
    {
      min2();
    }
    if(minute==3)
    {
      min3();
    }
    if(minute==4)
    {
      min4();
    }
    if(minute==5)
    {
      min5();
    }
    if(minute==6)
    {
      min6();
    }
    if(minute==7)
    {
      min7();
    }
    if(minute==8)
    {
      min8();
    }
    if(minute==9)
    {
      min9();
    }
    if(minute==10)
    {
      min10();
    }
    if(minute==11)
    {
      min11();
    }
    if(minute==12)
    {
      min12();
    }
    if(minute==13)
    {
      min13();
    }
    if(minute==14)
    {
      min14();
    }
    if(minute==15)
    {
      min15();
    }
    if(minute==16)
    {
      min16();
    }
    if(minute==17)
    {
      min17();
    }
    if(minute==18)
    {
      min18();
    }
    if(minute==19)
    {
      min19();
    }
    if(minute==20)
    {
      min20();
    }
    if(minute==21)
    {
      min21();
    }
    if(minute==22)
    {
      min22();
    }
    if(minute==23)
    {
      min23();
    }
    if(minute==24)
    {
      min24();
    }
    if(minute==25)
    {
      min25();
    }
    if(minute==26)
    {
      min26();
    }
    if(minute==27)
    {
      min27();
    }
    if(minute==28)
    {
      min28();
    }
    if(minute==29)
    {
      min29();
    }
    if(minute==30)
    {
      min30();
    }
    if(minute==31)
    {
      min31();
    }
    if(minute==32)
    {
      min32();
    }
    if(minute==33)
    {
      min33();
    }
    if(minute==34)
    {
      min34();
    }
    if(minute==35)
    {
      min35();
    }
    if(minute==36)
    {
      min36();
    }
    if(minute==37)
    {
      min37();
    }
    if(minute==38)
    {
      min38();
    }
    if(minute==39)
    {
      min39();
    }
    if(minute==40)
    {
      min40();
    }
    if(minute==41)
    {
      min41();
    }
    if(minute==42)
    {
      min42();
    }
    if(minute==43)
    {
      min43();
    }
    if(minute==44)
    {
      min44();
    }
    if(minute==45)
    {
      min45();
    }
    if(minute==46)
    {
      min46();
    }
    if(minute==47)
    {
      min47();
    }
    if(minute==48)
    {
      min48();
    }
    if(minute==49)
    {
      min49();
    }
    if(minute==50)
    {
      min50();
    }
    if(minute==51)
    {
      min51();
    }
    if(minute==52)
    {
      min52();
    }
    if(minute==53)
    {
      min53();
    }
    if(minute==54)
    {
      min54();
    }
    if(minute==55)
    {
      min55();
    }
    if(minute==56)
    {
      min56();
    }
    if(minute==57)
    {
      min57();
    }
    if(minute==58)
    {
      min58();
    }
    if(minute==59)
    {
      min59();
    }
    if(minute==60)
    {
      min60();
    }
    FastLED.show();
    FastLED.clear();
    FastLED.show();  
}

void pride() 
{
  static uint16_t sPseudotime = 0;
  static uint16_t sLastMillis = 0;
  static uint16_t sHue16 = 0;
 
  uint8_t sat8 = beatsin88( 87, 220, 250);
  uint8_t brightdepth = beatsin88( 341, 96, 224);
  uint16_t brightnessthetainc16 = beatsin88( 203, (25 * 256), (40 * 256));
  uint8_t msmultiplier = beatsin88(147, 23, 60);

  uint16_t hue16 = sHue16;//gHue * 256;
  uint16_t hueinc16 = beatsin88(113, 1, 3000);
  
  uint16_t ms = millis();
  uint16_t deltams = ms - sLastMillis ;
  sLastMillis  = ms;
  sPseudotime += deltams * msmultiplier;
  sHue16 += deltams * beatsin88( 400, 5,9);
  uint16_t brightnesstheta16 = sPseudotime;
  
  for( uint16_t i = 0 ; i < NUM_LEDS; i++) {
    hue16 += hueinc16;
    uint8_t hue8 = hue16 / 256;

    brightnesstheta16  += brightnessthetainc16;
    uint16_t b16 = sin16( brightnesstheta16  ) + 32768;

    uint16_t bri16 = (uint32_t)((uint32_t)b16 * (uint32_t)b16) / 65536;
    uint8_t bri8 = (uint32_t)(((uint32_t)bri16) * brightdepth) / 65536;
    bri8 += (255 - brightdepth);
    
    CRGB newcolor = CHSV( hue8, sat8, bri8);
    
    uint16_t pixelnumber = i;
    pixelnumber = (NUM_LEDS-1) - pixelnumber;
    
    nblend( leds[pixelnumber], newcolor, 64);
  }
}

/*------------------------------------Hour LEDs------------------------------------*/
void hour12()
{
    leds[2] = CRGB(r,g,b);
    leds[4] = CRGB(r,g,b);
    leds[5] = CRGB(r,g,b);
    leds[7] = CRGB(r,g,b);
    leds[10] = CRGB(r,g,b);
    leds[14] = CRGB(r,g,b);
    leds[16] = CRGB(r,g,b);
    leds[17] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
    leds[25] = CRGB(r,g,b);
    leds[30] = CRGB(r,g,b);
    leds[32] = CRGB(r,g,b);
    leds[33] = CRGB(r,g,b);
}
void hour1()
{
    leds[3] = CRGB(r,g,b);
    leds[9] = CRGB(r,g,b);
    leds[15] = CRGB(r,g,b);
    leds[24] = CRGB(r,g,b);
    leds[31] = CRGB(r,g,b);
}
void hour2()
{
    leds[0] = CRGB(r,g,b);
    leds[1] = CRGB(r,g,b);
    leds[4] = CRGB(r,g,b);
    leds[8] = CRGB(r,g,b);
    leds[9] = CRGB(r,g,b);
    leds[15] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
    leds[24] = CRGB(r,g,b);
}
void hour3()
{
    leds[0] = CRGB(r,g,b);
    leds[1] = CRGB(r,g,b);
    leds[4] = CRGB(r,g,b);
    leds[8] = CRGB(r,g,b);
    leds[9] = CRGB(r,g,b);
    leds[16] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
    leds[24] = CRGB(r,g,b);
}
void hour4()
{
    leds[3] = CRGB(r,g,b);
    leds[4] = CRGB(r,g,b);
    leds[8] = CRGB(r,g,b);
    leds[9] = CRGB(r,g,b);
    leds[16] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
}
void hour5()
{
    leds[0] = CRGB(r,g,b);
    leds[1] = CRGB(r,g,b);
    leds[3] = CRGB(r,g,b);
    leds[8] = CRGB(r,g,b);
    leds[9] = CRGB(r,g,b);
    leds[16] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
    leds[24] = CRGB(r,g,b);
}
void hour6()
{
    leds[0] = CRGB(r,g,b);
    leds[1] = CRGB(r,g,b);
    leds[3] = CRGB(r,g,b);
    leds[8] = CRGB(r,g,b);
    leds[9] = CRGB(r,g,b);
    leds[15] = CRGB(r,g,b);
    leds[16] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
    leds[24] = CRGB(r,g,b);
}
void hour7()
{
    leds[0] = CRGB(r,g,b);
    leds[1] = CRGB(r,g,b);
    leds[3] = CRGB(r,g,b);
    leds[4] = CRGB(r,g,b);
    leds[8] = CRGB(r,g,b);
    leds[16] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
}
void hour8()
{
    leds[0] = CRGB(r,g,b);
    leds[1] = CRGB(r,g,b);
    leds[3] = CRGB(r,g,b);
    leds[4] = CRGB(r,g,b);
    leds[8] = CRGB(r,g,b);
    leds[9] = CRGB(r,g,b);
    leds[15] = CRGB(r,g,b);
    leds[16] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
    leds[24] = CRGB(r,g,b);
}
void hour9()
{
    leds[0] = CRGB(r,g,b);
    leds[1] = CRGB(r,g,b);
    leds[3] = CRGB(r,g,b);
    leds[4] = CRGB(r,g,b);
    leds[8] = CRGB(r,g,b);
    leds[9] = CRGB(r,g,b);
    leds[16] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
    leds[24] = CRGB(r,g,b);
}
void hour10()
{
    leds[2] = CRGB(r,g,b);
    leds[4] = CRGB(r,g,b);
    leds[5] = CRGB(r,g,b);
    leds[7] = CRGB(r,g,b);
    leds[8] = CRGB(r,g,b);
    leds[10] = CRGB(r,g,b);
    leds[14] = CRGB(r,g,b);
    leds[22] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
    leds[25] = CRGB(r,g,b);
    leds[30] = CRGB(r,g,b);
    leds[32] = CRGB(r,g,b);
    leds[33] = CRGB(r,g,b);
}
void hour11()
{
    leds[2] = CRGB(r,g,b);
    leds[4] = CRGB(r,g,b);  
    leds[8] = CRGB(r,g,b);
    leds[10] = CRGB(r,g,b);
    leds[14] = CRGB(r,g,b);
    leds[16] = CRGB(r,g,b);
    leds[23] = CRGB(r,g,b);
    leds[25] = CRGB(r,g,b);
    leds[30] = CRGB(r,g,b);
    leds[32] = CRGB(r,g,b);
}

/*----------------------------Minutes LEDs----------------------------*/
void min0()
{
    leds[62] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[87] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[91] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min1()
{
    leds[56] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[87] = CRGB(r,g,b);
}
void min2()
{
    leds[55] = CRGB(r,g,b);
    leds[56] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[87] = CRGB(r,g,b);
}
void min3()
{
    leds[55] = CRGB(r,g,b);
    leds[56] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[87] = CRGB(r,g,b);
}
void min4()
{
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
}
void min5()
{
    leds[55] = CRGB(r,g,b);
    leds[56] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[87] = CRGB(r,g,b);
}
void min6()
{
    leds[55] = CRGB(r,g,b);
    leds[56] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[87] = CRGB(r,g,b);
}
void min7()
{
    leds[55] = CRGB(r,g,b);
    leds[56] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
}
void min8()
{
    leds[55] = CRGB(r,g,b);
    leds[56] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[87] = CRGB(r,g,b);
}
void min9()
{
    leds[55] = CRGB(r,g,b);
    leds[56] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[87] = CRGB(r,g,b);
}
void min10()
{
    leds[62] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min11()
{
    leds[62] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
}
void min12()
{
    leds[62] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min13()
{
    leds[62] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min14()
{
    leds[62] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min15()
{
    leds[62] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min16()
{
    leds[62] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min17()
{
    leds[62] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min18()
{
    leds[62] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min19()
{
    leds[62] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[73] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min20()
{
    leds[62] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[91] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min21()
{
    leds[62] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[91] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min22()
{
    leds[62] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[91] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min23()
{
    leds[62] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[91] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min24()
{
    leds[62] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[91] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min25()
{
    leds[62] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[91] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min26()
{
    leds[62] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[80] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[86] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[91] = CRGB(r,g,b);
    leds[92] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min27()
{
    leds[62] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    leds[78] = CRGB(r,g,b);
    leds[79] = CRGB(r,g,b);
    leds[81] = CRGB(r,g,b);
    leds[85] = CRGB(r,g,b);
    leds[88] = CRGB(r,g,b);
    leds[90] = CRGB(r,g,b);
    leds[91] = CRGB(r,g,b);
    leds[93] = CRGB(r,g,b);
}
void min28()
{
    leds[62] = CRGB(r,g,b);
    leds[63] = CRGB(r,g,b);
    leds[64] = CRGB(r,g,b);
    leds[65] = CRGB(r,g,b);
    leds[70] = CRGB(r,g,b);
    leds[71] = CRGB(r,g,b);
    leds[72] = CRGB(r,g,b);
    }

附录
【Arduino 动手做】RGB HexMatrix | 物联网时钟
项目链接:https://www.hackster.io/Mukesh_Sankhla/rgb-hexmatrix-iot-clock-54fc5d
项目作者:穆克什·桑克拉

项目视频 :https://www.youtube.com/watch?v=iDJgYJqa-gg
项目代码与 3D 文件:
https://drive.google.com/drive/folders/1vSOFGcGl1IOswgpjikX-N6DDl-dHUQP0
时钟代码1:https://www.hackster.io/code_files/462059/download
时钟代码2:https://www.hackster.io/code_files/462060/download

 

00158-.gif

评论

user-avatar
icon 他的勋章
    展开更多