Подключил светодиоды 8шт. на часть разрядов - все горят.
При вращении энкодера не гаснет ни один.
Код:
boolean b=0;
int i=0;
void setup()
{
pinMode(20, INPUT); //sdata
pinMode(5, OUTPUT); //CLOCK
pinMode(22, OUTPUT);
pinMode(23, OUTPUT);
pinMode(24, OUTPUT);
pinMode(25, OUTPUT);
pinMode(46, OUTPUT);
pinMode(47, OUTPUT);
pinMode(48, OUTPUT);
pinMode(49, OUTPUT);
}
void loop()
{
if (i==0)
{
digitalWrite(5,LOW);
delayMicroseconds(3);
digitalWrite(5,HIGH);
delayMicroseconds(3);
}
if (i<=13)
{
digitalWrite(5,LOW);
delayMicroseconds(3);
b= digitalRead(20);
if (i==1){digitalWrite(22,b);}
if (i==2){digitalWrite(23,b);}
if (i==3){digitalWrite(24,b);}
if (i==4){digitalWrite(25,b);}
if (i==5){digitalWrite(46,b);}
if (i==6){digitalWrite(47,b);}
if (i==7){digitalWrite(48,b);}
if (i==8){digitalWrite(49,b);}
digitalWrite(5,HIGH);
delayMicroseconds(3);
}
if (i>13)
{
i=-1;
digitalWrite(5,LOW);
delayMicroseconds(3);
digitalWrite(5,HIGH);
delayMicroseconds(10);
}
i++;
}