Hi to all friends. This code is for motorcycles and it works. but I'm having a hard time adjusting it for my 6 cylinder 4 stroke engine. and the number of LEDs is 17. I want to increase the number of LEDs to 10. My engine speed signal is 50hz = 1000rm. max speed is 7000, that is 350hz. When I try to set it up it gives an error. I would be grateful if you could help me.
#define l1 13
#define l2 A0
#define l3 A1
#define l4 A2
#define l5 A3
#define l6 A4
#define l7 A5
#define l8 1
#define l9 0
#define l10 3
#define l11 4
#define l12 5
#define l13 6
#define l14 7
#define l15 8
#define l16 9
#define l17 10
unsigned long value;
int waktuDelay=30;
void setup() {
// put your setup code here, to run once:
pinMode(2, INPUT);
pinMode( l1, OUTPUT);
pinMode( l2, OUTPUT);
pinMode( l3, OUTPUT);
pinMode( l4, OUTPUT);
pinMode( l5, OUTPUT);
pinMode( l6, OUTPUT);
pinMode( l7, OUTPUT);
pinMode( l8, OUTPUT);
pinMode( l9, OUTPUT);
pinMode( l10, OUTPUT);
pinMode( l11, OUTPUT);
pinMode( l12, OUTPUT);
pinMode( l13, OUTPUT);
pinMode( l14, OUTPUT);
pinMode( l15, OUTPUT);
pinMode( l16, OUTPUT);
pinMode( l17, OUTPUT);
nyala(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);
delay(waktuDelay);
nyala(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay*4);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);
delay(waktuDelay*4);
nyala(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay*4);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay);
nyala(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(waktuDelay*10);
}
void loop() {
// put your main code here, to run repeatedly:
value=60000000/(pulseIn(2, HIGH, 300000)+pulseIn(2, LOW, 300000));
if(value>20000)value=0;
if(value<10)nyala(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
else if(value<450)nyala(1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
else if(value<900)nyala(1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
else if(value<1350)nyala(1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
else if(value<1800)nyala(1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0);
else if(value<2250)nyala(1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0);
else if(value<2700)nyala(1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0);
else if(value<3150)nyala(1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0);
else if(value<3600)nyala(1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0);
else if(value<4050)nyala(1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0);
else if(value<4500)nyala(1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0);
else if(value<4950)nyala(1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0);
else if(value<5400)nyala(1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0);
else if(value<5850)nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0);
else if(value<6300)nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0);
else if(value<6750)nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0);
else if(value<7200)nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0);
else if(value<7650)nyala(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);
if (value>4500)
{
delay(70);
nyala(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
delay(50);
}
}
void nyala( byte a, byte b, byte c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k, byte l, byte m, byte n, byte o, byte p,byte q)
{
digitalWrite(l1, a);
digitalWrite(l2, b);
digitalWrite(l3, c);
digitalWrite(l4, d);
digitalWrite(l5, e);
digitalWrite(l6, f);
digitalWrite(l7, g);
digitalWrite(l8, h);
digitalWrite(l9, i);
digitalWrite(l10, j);
digitalWrite(l11, k);
digitalWrite(l12, l);
digitalWrite(l13, m);
digitalWrite(l14, n);
digitalWrite(l15, o);
digitalWrite(l16, p);
digitalWrite(l17, q);
}