per lo schema non ho fatto altro che usare quello che si trova nelle Reference ufficiali per il codice invece ecco:
#include "LedControl.h"
// DIN, CLK, LOAD, numero di integrati max7219
LedControl lc=LedControl(12,11,10,3);
int v;
int d;
int c;
int e;
int f;
int ones;
int tens;
int hundreds;
void setup()
{
lc.shutdown(1,false);
lc.setIntensity(1,15);
lc.clearDisplay(1);
lc.shutdown(2,false);
lc.setIntensity(2,15);
lc.clearDisplay(2);
lc.shutdown(0,false);
lc.setIntensity(0,15);
lc.clearDisplay(0);
for(int index=0;index<lc.getDeviceCount();index++) {
lc.shutdown(index,false);
}
}
void loop()
{
v=v+1;
ones=v%10;
if (v>10) {
d=v;
d=d/10;
c=d%10;
}
if (v>100){
e=d;
e=e/10;
f=e%10;
}
if (v>599){
v=0;
c=0;
f=0;
}
lc.setDigit(1,0,f,false);
lc.setDigit(1,1,c,true);
lc.setDigit(1,2,(byte)ones,false);
lc.setDigit(1,3,f,false);
lc.setDigit(1,4,c,true);
lc.setDigit(1,5,(byte)ones,false);
lc.setDigit(0,0,f,false);
lc.setDigit(0,1,c,true);
lc.setDigit(0,2,(byte)ones,false);
lc.setDigit(0,3,f,false);
lc.setDigit(0,4,c,true);
lc.setDigit(0,5,(byte)ones,false);
lc.setDigit(2,0,f,false);
lc.setDigit(2,1,c,true);
lc.setDigit(2,2,(byte)ones,false);
lc.setDigit(2,3,(byte)ones,false);
delay (100);
}
Ciao