#include const int Lane1Pin = 9; //Output Channel 1 const int Lane2Pin = 10; //Output Channel 2 const int Lane3Pin = 11; //Output Channel 3 const int Enc1P1 = 2; //Encoder 1 Pin 1 to Interrupt const int Enc2P1 = 3; //Encoder 2 Pin 1 to Interrupt const int Enc1P2 = 14; //Encoder 1 Pin 2 to non-Interrupting pin because we only have 2 const int Enc2P2 = 15; //Encoder 2 Pin 2 to non-Interrupting pin because we only have 2 const int Enc1Btn = 16; //Encoder 1 Button const int Enc2Btn = 17; //Encoder 2 Button const int ClockIn = 20; //Clock In Encoder LeftEnc( Enc1P1, Enc1P2); Encoder RightEnc( Enc2P1, Enc2P2); int E1 = 0; int E2 = 0; bool E1Btn = false; bool E2Btn = false; bool ClockState = false; int PpQN = 24; float Clock = 120; float ClockTick = 1/((Clock * PpQN)/60); long Lane1Pos, Lane2Pos, Lane3Pos, Lane1Time, Lane2Time, Lane3Time= 0; int Lane1[4,16]; int Lane2[4,16]; int Lane3[4,16]; void setup() { //Open Serial for output prior to installing a screen Serial.begin( 115200 ); randomSeed(analogread(A7)); //Clear the Lanes for(int i = 0; i < 16; i++){ Lane1[0,i] = random(0, 96); Lane1[1,i] = random(0, 255); Lane1[2,i] = random(0, 2); Lane1[3,i] = random(0,255); for(int j = 0; j < 4; j++){ Lane2[j,i] = Lane3[i,j] = 0; } } } void loop() { delay(1); }