// matriz de LED 8x8, Numeros del 0 al 9
#include <Wire.h>
#include <RTClib.h>
RTC_DS3231 rtc;
#include "LedControl.h"
#include <MatrizLed.h>
#include <SPI.h>
//#include <MD_Parola.h>
//#include <MD_MAX72xx.h>
LedControl lc=LedControl(11,13,10,4); //1 hasta 8 modulos de 8x8, por ahora 1 mòdulo
// al mòdulo 1 le corresponde el Indice 0,al 8 le corresponde el indice 7
MatrizLed pantalla;
byte cero[8]= {
B00000000,
B00111100,
B01100110,
B01101110,
B01110110,
B01100110,
B01100110,
B00111100
};
byte uno[8]= {
B00000000,
B00011000,
B00011000,
B00111000,
B00011000,
B00011000,
B00011000,
B01111110
};
byte dos[8]= {
B00000000,
B00111100,
B01100110,
B00000110,
B00001100,
B00110000,
B01100000,
B01111110
};
byte tres[8]= {
B00000000,
B00111100,
B01100110,
B00000110,
B00011100,
B00000110,
B01100110,
B00111100
};
byte cuatro[8]= {
B00000000,
B00001100,
B00011100,
B00101100,
B01001100,
B01111110,
B00001100,
B00001100
};
byte cinco[8]= {
B00000000,
B01111110,
B01100000,
B01111100,
B00000110,
B00000110,
B01100110,
B00111100
};
byte seis[8]= {
B00000000,
B00111100,
B01100110,
B01100000,
B01111100,
B01100110,
B01100110,
B00111100
};
byte siete[8]= {
B00000000,
B01111110,
B01100110,
B00001100,
B00001100,
B00011000,
B00011000,
B00011000
};
byte ocho[8]= {
B00000000,
B00111100,
B01100110,
B01100110,
B00111100,
B01100110,
B01100110,
B00111100
};
byte nueve[8]= {
B00000000,
B00111100,
B01100110,
B01100110,
B00111110,
B00000110,
B01100110,
B00111100
};
void setup() {
// put your setup code here, to run once:
// run an initial date process. Should return:
// hh:mm:ss :
pinMode(11,OUTPUT);
//hour = OUTPUT;
//minute = OUTPUT;
pantalla.begin(11,13,10,4);
//pantalla.rotar(true);
lc.shutdown(0,false); //permite habililiat la matriz, apagado,pero al poner false
//es todo lo contrario
lc.setIntensity(0,4); // intensidad 4, maximo 15
lc.clearDisplay(0); //apagado la matriz 1 en ralidad matriz 0
lc.shutdown(1,false); //permite habililiat la matriz, apagado,pero al poner false
//es todo lo contrario
lc.setIntensity(1,4); // intensidad 4, maximo 15
lc.clearDisplay(1); //apagado la matriz 1 en ralidad matriz 0
lc.shutdown(2,false); //permite habililiat la matriz, apagado,pero al poner false
//es todo lo contrario
lc.setIntensity(2,4); // intensidad 4, maximo 15
lc.clearDisplay(2); //apagado la matriz 1 en ralidad matriz 0
lc.shutdown(3,false); //permite habililiat la matriz, apagado,pero al poner false
//es todo lo contrario
lc.setIntensity(3,4); // intensidad 4, maximo 15
lc.clearDisplay(3); //apagado la matriz 1 en ralidad matriz 0
rtc.begin();
rtc.adjust(DateTime(__DATE__,__TIME__));
Wire.begin();
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
DateTime fecha = rtc.now();
DateTime hora = rtc.now();
DateTime minuto= rtc.now();
Serial.print(fecha.hour());
Serial.print(':');
Serial.print(fecha.minute());
Serial.print(":");
Serial.print(fecha.second());
Serial.println();
//pantalla.borrar();
//pantalla.setLed(0,3,1,true);
//pantalla.setLed(0,2,0,true);
//pantalla.setLed(0,4,2,true);
//pantalla.setLed(0,5,3,true);
pantalla.escribirCaracter('1',0);
pantalla.escribirCaracter('2',8);
pantalla.escribirCaracter('3',16);
pantalla.escribirCaracter('4',24);
delay(1000);
}
void hora(){
for(int h = 0; h <24; h++)
{
lc.setRow(0,h,hora[h]);
}
}
void minuto (){
for(int m = 0; m <60; m++)
{
lc.setRow(0,m,minuto[m]);
}
}
void fecha_0(){
for(int i = 0; i < 8; i++)
{
lc.setRow(0,i,cero[i]);
}
}
void fecha_1(){
for(int i = 0; i < 8; i++)
{
lc.setRow(0,i,uno[i]);
}
}
void fecha_2(){
for(int i = 0; i < 8; i++)
{
lc.setRow(0,i,dos[i]);
}
}
void fecha_3(){
for(int i = 0; i < 8; i++)
{
lc.setRow(0,i,tres[i]);
}
}
void fecha_4(){
for(int i = 0; i < 8; i++)
{
lc.setRow(0,i,cuatro[i]);
}
}
void fecha_5(){
for (int i = 0; i < 8; i++)
{
lc.setRow(0,i,cinco[i]);
}
}
void fecha_6(){
for(int i = 0;i < 8; i++)
{
lc.setRow(0,i,seis[i]);
}
}
void fecha_7(){
for(int i = 0; i < 8; i++)
{
lc.setRow(0,i,siete[i]);
}
}
void fecha_8(){
for(int i = 0; i < 8; i++)
{
lc.setRow(0,i,ocho[i]);
}
}
void fecha_9(){
for(int i = 0; i < 8; i++)
{
lc.setRow(0,i,nueve[i]);
}
}