1

Тема: RGB КОЛЬЦО - ЧАСЫ

http://forum.rcl-radio.ru/uploads/images/2020/09/2e555cce76c2a3369db734af5667858a.png

#include <Adafruit_NeoPixel.h>
#include <Wire.h>
#include <DS3231.h>//https://github.com/jarzebski/Arduino-DS3231/archive/master.zip
 DS3231 clock;
 RTCDateTime DateTime;
 Adafruit_NeoPixel strip = Adafruit_NeoPixel(12, 2, NEO_GRB + NEO_KHZ400);// 4 трека, D6

byte i,s,m,h,mm,sm,sh,mh;
unsigned long t;

void setup(){
  strip.begin();Wire.begin(); clock.begin();
// clock.setDateTime(__DATE__, __TIME__);
}

void loop(){ 
    DateTime=clock.getDateTime();
    s = DateTime.second/5;
    m = DateTime.minute/5;
    h = DateTime.hour;
    if(h>11){h=h-12;}
    if(s==m){sm=10;}else{sm=0;}
    if(s==h){sh=10;}else{sh=0;}
    if(m==h){mh=10;}else{mh=0;}
    
    if(s==0){strip.setPixelColor(11, strip.Color(0, 0, 0));}
    else{strip.setPixelColor(s-1, strip.Color(0, 0, 0)); }
    if(m==0){strip.setPixelColor(11, strip.Color(0, 0, 0));}
    else{strip.setPixelColor(m-1, strip.Color(0, 0, 0)); }
    if(h==0){strip.setPixelColor(11, strip.Color(0, 0, 0));}
    else{strip.setPixelColor(h-1, strip.Color(0, 0, 0)); }
    strip.setPixelColor(s, strip.Color(0, 10, 0));
    strip.setPixelColor(m, strip.Color(0, sm, 10));
    strip.setPixelColor(h, strip.Color(10, sh, mh));
    strip.show();
}

2

Re: RGB КОЛЬЦО - ЧАСЫ

RGB КОЛЬЦО ЧАСЫ + TM1637
http://forum.rcl-radio.ru/uploads/images/2020/09/3bc033a7d1eb544b58a855bc44395db8.png

#include <Adafruit_NeoPixel.h>
#include <Wire.h>
#include <STM32_TM1637.h>                // http://rcl-radio.ru/wp-content/uploads/2020/02/STM32_TM1637_V1_3.zip
#include <DS3231.h>//https://github.com/jarzebski/Arduino-DS3231/archive/master.zip
 DS3231 clock;
 RTCDateTime DateTime;
 STM32_TM1637 tm(4,3);// CLK, DIO
 Adafruit_NeoPixel strip = Adafruit_NeoPixel(12, 2, NEO_GRB + NEO_KHZ400);// 4 трека, D6

byte i,s,m,h,mm,sm,sh,mh;
unsigned long t;

void setup(){
  pinMode(5,INPUT);
  strip.begin();Wire.begin(); clock.begin();
  tm.brig(5);
  clock.setOutput(DS3231_1HZ);
// clock.setDateTime(__DATE__, __TIME__);
}

void loop(){ 
    DateTime=clock.getDateTime();
    s = DateTime.second/5;
    m = DateTime.minute/5;
    h = DateTime.hour;
    if(h>11){h=h-12;}
    if(s==m){sm=10;}else{sm=0;}
    if(s==h){sh=10;}else{sh=0;}
    if(m==h){mh=10;}else{mh=0;}
    
    if(s==0){strip.setPixelColor(11, strip.Color(0, 0, 0));}
    else{strip.setPixelColor(s-1, strip.Color(0, 0, 0)); }
    if(m==0){strip.setPixelColor(11, strip.Color(0, 0, 0));}
    else{strip.setPixelColor(m-1, strip.Color(0, 0, 0)); }
    if(h==0){strip.setPixelColor(11, strip.Color(0, 0, 0));}
    else{strip.setPixelColor(h-1, strip.Color(0, 0, 0)); }
    strip.setPixelColor(s, strip.Color(0, 10, 0));
    strip.setPixelColor(m, strip.Color(0, sm, 10));
    strip.setPixelColor(h, strip.Color(10, sh, mh));
    strip.show();
    tm.print_time(DateTime.hour*100+DateTime.minute, digitalRead(5));
   // delay(500);
}

3

Re: RGB КОЛЬЦО - ЧАСЫ

RGB КОЛЬЦО ЧАСЫ + TM1637 + коррекция времени кнопками

#include <Adafruit_NeoPixel.h>
#include <Wire.h>
#include <STM32_TM1637.h>                // http://rcl-radio.ru/wp-content/uploads/2020/02/STM32_TM1637_V1_3.zip
#include <DS3231.h>//https://github.com/jarzebski/Arduino-DS3231/archive/master.zip
 DS3231 clock;
 RTCDateTime DateTime;
 STM32_TM1637 tm(4,3);// CLK, DIO
 Adafruit_NeoPixel strip = Adafruit_NeoPixel(12, 2, NEO_GRB + NEO_KHZ400);// 4 трека, D6

byte i,s,m,h,mm,sm,sh,mh,minut,hour;
unsigned long t;
bool w;

void setup(){
  pinMode(5,INPUT);
  pinMode(6,INPUT_PULLUP);
  pinMode(7,INPUT_PULLUP);
  strip.begin();Wire.begin(); clock.begin();
  tm.brig(5);
  clock.setOutput(DS3231_1HZ);
// clock.setDateTime(__DATE__, __TIME__);
}

void loop(){ 
    DateTime=clock.getDateTime();
    s = DateTime.second/5;
    m = DateTime.minute/5;
    minut = DateTime.minute;
    h = DateTime.hour;
    hour = DateTime.hour;
    if(h>11){h=h-12;}
    if(s==m){sm=10;}else{sm=0;}
    if(s==h){sh=10;}else{sh=0;}
    if(m==h){mh=10;}else{mh=0;}
    
    if(s==0){strip.setPixelColor(11, strip.Color(0, 0, 0));}
    else{strip.setPixelColor(s-1, strip.Color(0, 0, 0)); }
    if(m==0){strip.setPixelColor(11, strip.Color(0, 0, 0));}
    else{strip.setPixelColor(m-1, strip.Color(0, 0, 0)); }
    if(h==0){strip.setPixelColor(11, strip.Color(0, 0, 0));}
    else{strip.setPixelColor(h-1, strip.Color(0, 0, 0)); }
    strip.setPixelColor(s, strip.Color(0, 10, 0));
    strip.setPixelColor(m, strip.Color(0, sm, 10));
    strip.setPixelColor(h, strip.Color(10, sh, mh));
    strip.show();
    tm.print_time(DateTime.hour*100+DateTime.minute, digitalRead(5));

    ////////// SET CLOCK

  if(digitalRead(6) == LOW){ /////// BUTTON PC2
    w=1; hour++; if(hour>23){hour=0;} delay(300);}
  if(digitalRead(7) == LOW){ /////// BUTTON PC1
    w=1; minut++; if(minut>59){minut=0;} delay(300);}
 if(w == 1){w=0; clock.setDateTime(2020, 9, 3, hour, minut, 0);}
  delay(100);
}

4

Re: RGB КОЛЬЦО - ЧАСЫ

Привет.
1. Как выставить часы от компа ?
2 Куда ставим кнопки ?

5

Re: RGB КОЛЬЦО - ЧАСЫ

Установка времени по времени компиляции:

// clock.setDateTime(__DATE__, __TIME__);

Кнопки D6 D7, замыкание на GND

6

Re: RGB КОЛЬЦО - ЧАСЫ

Привет. Сейчас 12-23 ,часы показывают ---часы синий 12 и бегут секунды -зеленый.

7

Re: RGB КОЛЬЦО - ЧАСЫ

красный часы, синий минуты, зеленый секунды

8

Re: RGB КОЛЬЦО - ЧАСЫ

С 13 часов , правильно идет отображение времени.

9

Re: RGB КОЛЬЦО - ЧАСЫ

Попробуйте поменять строку:
if(h>12){h=h-12;}
на
if(h>11){h=h-12;}

Если не получился, мне надо проверять на собранной схеме, а это я смогу сделать не раньше понедельника

10

Re: RGB КОЛЬЦО - ЧАСЫ

С 12 дня ,у меня пропадает индикация часов на кольце, ( минуты,сек есть ). Переключил на 13 , есть все .

11

Re: RGB КОЛЬЦО - ЧАСЫ

Я внес изменения в скетчи

12

Re: RGB КОЛЬЦО - ЧАСЫ

Всем привет. Разбирался с схемой подключения по коду. Все получилось.Данный контент доступен только зарегистрированным пользователям.

13

Re: RGB КОЛЬЦО - ЧАСЫ

Собрал часы внутрянка и оболочка Китай, но плагодаря автору все работает.http://forum.rcl-radio.ru/uploads/images/2021/05/d149f673ad53255bb30d9658c31758cb.jpg