#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <iarduino_RTC.h>
#include <Max72xxPanel.h>


uint8_t h,m,s;
int pinCS=10;
int numberOfHorizontalDisplays = 1;
int numberOfVerticalDisplays = 4;

Max72xxPanel matrix = Max72xxPanel(pinCS, numberOfHorizontalDisplays, numberOfVerticalDisplays);



iarduino_RTC watch(RTC_DS1307);

void setup() {
 Serial.begin(9600); 
  matrix.setIntensity(1);
 
    matrix.setRotation(0,4); 
   matrix.setRotation(1,4);
    matrix.setRotation(2,4);
     matrix.setRotation(3,4);
     matrix.setRotation(matrix.getRotation()+1);
 
    watch.begin();
    watch.settime(0,0,0);










#define BSET_PIN 7
#define BPLUS_PIN 6
#define BMINUS_PIN 5
#define LEDH_PIN 9
#define LEDM_PIN 8

void setup() {
  Serial.begin(9600); 
 
    
    

    pinMode (BSET_PIN, INPUT);
    pinMode (BPLUS_PIN, INPUT);
    pinMode (BMINUS_PIN, INPUT);
    pinMode (LEDH_PIN, OUTPUT);
    pinMode (LEDM_PIN, OUTPUT);
    digitalWrite(LEDM_PIN, HIGH);
    digitalWrite(LEDH_PIN, HIGH);


}
    void loop() {
      if(digitalRead(BSET_PIN)) {
      
      digitalWrite(LEDM_PIN,LOW);
      digitalWrite(LEDH_PIN, HIGH);
      delay(1000);}
      if(digitalRead(BSET_PIN)) {


      digitalWrite(LEDM_PIN, HIGH);
      digitalWrite(LEDH_PIN, LOW);
      delay(1000);}
      if(digitalRead(BSET_PIN)){

      digitalWrite(LEDM_PIN, HIGH);
      digitalWrite(LEDH_PIN, HIGH);
      delay(1000);}

  Serial.print(regim);

if(regim==1)
{
  if(button_plus==1){
    h++;
    if(h>23) h=0;
    watch.settime(0,m,h);
    delay(10);
}
 if(button_minus==1) {
  h--;
  if(h<=0) h=24;
  watch.settime(0,m,h);
  delay(10);
  } 
 }

 if(regim==2)
 {
  if(button_plus==1){
    m++;
    if(m>59) m=0;
    watch.settime(0,m,h);
    delay(10);
  }
  if(button_minus==1) {
    m--;
    if(m<=0) m=59;
    watch.settime(0,m,h); 
    delay(10);
  }
 }
} 
void Display(){
    matrix.fillScreen(0);

    String hour1 = String (h/10); // преобразовываем числа для вывода
    String hour2 = String (h%10);
    String min1 = String (m/10);
    String min2 = String (m%10);
    String sec1 = String (s/10);
    String sec2 = String (s%10);

 matrix.drawChar(1,1,min2[0],HIGH,LOW,1); 
    matrix.drawChar(10,1,min1[0],HIGH,LOW,1);
matrix.drawChar(17,1,hour2[0],HIGH,LOW,1);
matrix.drawChar(26,1,hour1[0],HIGH,LOW,1);
matrix.write();

    

       matrix.drawPixel(6, 0,HIGH);
     matrix.drawPixel (25, 7,HIGH);
      matrix.drawPixel(22, 0,HIGH);
       matrix.drawPixel(22, 7,HIGH);
         matrix.drawPixel(6, 7,HIGH);
          matrix.drawPixel(9, 0,HIGH);
           matrix.drawPixel(9, 7,HIGH);
            matrix.drawPixel(25, 0,HIGH);
            matrix.write();




            delay(500);



   
  

   matrix.drawPixel(6, 0,LOW); 
    matrix.drawPixel(9, 0,LOW);
     matrix.drawPixel(22, 0,LOW);
      matrix.drawPixel(25, 0,LOW);
        matrix.drawPixel(25, 7,LOW);
         matrix.drawPixel(6, 7,LOW);
           matrix.drawPixel(9, 7,LOW);
            matrix.drawPixel(22, 7,LOW);
            matrix.write();
             delay(500);

   

}

  




      }
    





GND5VSDASCLSQWRTCDS1307+