int d1=3; int d2=5; int d3=6; int d4=9; int a=2; int b=4; int c=7; int d=8; int e=10; int f=11; int g=12; int j =random(1,1257); #define b1 A0 #define b2 A1 long Counter=0; int flag1=0, flag2=0, timer=0; int Common = 1; // int On, Off, Off_C; int DTime = 4; // Display timer void setup() { pinMode(2,OUTPUT); pinMode(3,OUTPUT); pinMode(4,OUTPUT); pinMode(5,OUTPUT); pinMode(6,OUTPUT); pinMode(7,OUTPUT); pinMode(8,OUTPUT); pinMode(9,OUTPUT); pinMode(10,OUTPUT); pinMode(11,OUTPUT); pinMode(12,OUTPUT); if(Common==1){On=0, Off=1, Off_C=0;} //for Common anode else{On=1, Off=0, Off_C=1;} //for Common cathode } //IF YOU WANT IT OFF PUT HIGH, IF YOU WANT IT ON PUT LOW FOR THE SEGMENTS. //BUT HIGH FOR THE DIGIT PLACEMENT 1ST 2ND 3RD 4TH. void zig1(){ digitalWrite(d1,100); digitalWrite(d2,100); digitalWrite(d3,100); digitalWrite(d4,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(g,LOW); digitalWrite(a,HIGH); digitalWrite(b,HIGH); digitalWrite(d,HIGH); digitalWrite(e,HIGH); } void zig2(){ digitalWrite(d1,100); digitalWrite(d2,100); digitalWrite(d3,100); digitalWrite(d4,100); digitalWrite(f,HIGH); digitalWrite(c,HIGH); digitalWrite(a,HIGH); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,LOW); digitalWrite(e,LOW);} void dance(){ zig1(); delay(120); zig2(); delay(120); } void snake(){ digitalWrite(d1,100); digitalWrite(a,LOW); delay(100); digitalWrite(a,HIGH); digitalWrite(f,LOW); delay(100); digitalWrite(f,HIGH); digitalWrite(g,LOW); delay(100); digitalWrite(g,HIGH); digitalWrite(c,LOW); delay(100); digitalWrite(c,HIGH); digitalWrite(d1,LOW); digitalWrite(d2,100); digitalWrite(d,LOW); delay(100); digitalWrite(d,HIGH); digitalWrite(e,LOW); delay(100); digitalWrite(e,HIGH); digitalWrite(g,LOW); delay(100); digitalWrite(g,HIGH); digitalWrite(b,LOW); delay(100); digitalWrite(b,HIGH); digitalWrite(d2, LOW); digitalWrite(d3,100); digitalWrite(a,LOW); delay(100); digitalWrite(a,HIGH); digitalWrite(f,LOW); delay(100); digitalWrite(f,HIGH); digitalWrite(g,LOW); delay(100); digitalWrite(g,HIGH); digitalWrite(c,LOW); delay(100); digitalWrite(c,HIGH); digitalWrite(d3,LOW); digitalWrite(d4,100); digitalWrite(d,LOW); delay(100); digitalWrite(d,HIGH); digitalWrite(e,LOW); delay(100); digitalWrite(e,HIGH); digitalWrite(g,LOW); delay(100); digitalWrite(g,HIGH); digitalWrite(b,LOW); delay(100); digitalWrite(b,HIGH); digitalWrite(d4,LOW);} void showNumber(int x){ switch(x){ case 1: one(); break; case 2: two(); break; case 3: three(); break; case 4: four(); break; case 5: five(); break; case 6: six(); break; case 7: seven(); break; case 8: eight(); break; case 9: nine(); break; default: zero(); break; } } void one(){ digitalWrite( a, Off); // digitalWrite( b, On); // | digitalWrite( c, On); // | digitalWrite( d, Off); // | digitalWrite( e, Off); // | digitalWrite( f, Off); digitalWrite( g, Off); } void two(){ digitalWrite( a, On); // ____ digitalWrite( b, On); // | digitalWrite( c, Off); // ____| digitalWrite( d, On); // | digitalWrite( e, On); // |____ digitalWrite( f, Off); digitalWrite( g, On); } void three(){ digitalWrite( a, On); // ____ digitalWrite( b, On); // | digitalWrite( c, On); // ____| digitalWrite( d, On); // | digitalWrite( e, Off); // ____| digitalWrite( f, Off); digitalWrite( g, On); } void four(){ digitalWrite( a, Off); // digitalWrite( b, On); // | | digitalWrite( c, On); // |____| digitalWrite( d, Off); // | digitalWrite( e, Off); // | digitalWrite( f, On); digitalWrite( g, On); } void five(){ digitalWrite( a, On); // ____ digitalWrite( b, Off); // | digitalWrite( c, On); // |____ digitalWrite( d, On); // | digitalWrite( e, Off); // ____| digitalWrite( f, On); digitalWrite( g, On); } void six(){ digitalWrite( a, On); // ____ digitalWrite( b, Off); // | digitalWrite( c, On); // |____ digitalWrite( d, On); // | | digitalWrite( e, On); // |____| digitalWrite( f, On); digitalWrite( g, On); } void seven(){ digitalWrite( a, On); // ____ digitalWrite( b, On); // | digitalWrite( c, On); // | digitalWrite( d, Off); // | digitalWrite( e, Off); // | digitalWrite( f, Off); digitalWrite( g, Off); } void eight(){ digitalWrite( a, On); // ____ digitalWrite( b, On); // | | digitalWrite( c, On); // |____| digitalWrite( d, On); // | | digitalWrite( e, On); // |____| digitalWrite( f, On); digitalWrite( g, On); } void nine(){ digitalWrite( a, On); // ____ digitalWrite( b, On); // | | digitalWrite( c, On); // |____| digitalWrite( d, On); // | digitalWrite( e, Off); // ____| digitalWrite( f, On); digitalWrite( g, On); } void zero(){ digitalWrite( a, On); // ____ digitalWrite( b, On); // | | digitalWrite( c, On); // | | digitalWrite( d, On); // | | digitalWrite( e, On); // |____| digitalWrite( f, On); digitalWrite( g, Off); } void h(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,HIGH); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,LOW); digitalWrite(e,LOW); } void hi(){ digitalWrite(d4,LOW); digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,HIGH); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,LOW); digitalWrite(e,LOW);} void hi2(){ digitalWrite(d1,LOW); digitalWrite(d3,LOW); digitalWrite(d2,LOW); digitalWrite(d4,100); digitalWrite(f,HIGH); digitalWrite(c,LOW); digitalWrite(a,HIGH); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,HIGH); } void hib(){ digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d1,LOW); digitalWrite(d2,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,HIGH); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,LOW); digitalWrite(e,LOW);} void hib2(){ digitalWrite(d1,LOW);digitalWrite(d2,LOW);digitalWrite(d4,LOW); digitalWrite(d3,100); digitalWrite(f,HIGH); digitalWrite(c,LOW); digitalWrite(a,HIGH); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,HIGH);} void hib3(){ digitalWrite(d4,LOW); digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW);} void hibs(){ digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d1,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,HIGH); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,LOW); digitalWrite(e,LOW);} void hibs2(){ digitalWrite(d1,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d2,100); digitalWrite(f,HIGH); digitalWrite(c,LOW); digitalWrite(a,HIGH); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,HIGH);} void hibs3(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d4,LOW); digitalWrite(d3,LOW);} void hibs4(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,LOW); digitalWrite(e,HIGH);} void ibsc(){ digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d1,100); digitalWrite(f,HIGH); digitalWrite(c,LOW); digitalWrite(a,HIGH); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,HIGH);} void ibsc2(){ digitalWrite(d1,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d2,LOW);} void ibsc3(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d4,LOW); digitalWrite(d3,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,LOW); digitalWrite(e,HIGH);} void ibsc4(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void bsco(){ digitalWrite(d1,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d2,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,LOW); digitalWrite(e,HIGH);} void bsco2(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d4,LOW); digitalWrite(d3,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void bsco3(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void scor(){ digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d1,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,LOW); digitalWrite(e,HIGH);} void scor2(){ digitalWrite(d1,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d2,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void scor3(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d4,LOW); digitalWrite(d3,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void scor4(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void core(){ digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d1,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void core2(){ digitalWrite(d1,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d2,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void core3(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d4,LOW); digitalWrite(d3,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void core4(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,LOW); digitalWrite(e,LOW);} void oreb(){ digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d1,100); digitalWrite(f,LOW); digitalWrite(c,LOW); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void oreb2(){ digitalWrite(d1,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d2,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void oreb3(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d4,LOW); digitalWrite(d3,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,LOW); digitalWrite(e,LOW);} void oreb4(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW);} void rebb(){ digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d1,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,HIGH); digitalWrite(b,LOW); digitalWrite(g,HIGH); digitalWrite(e,LOW);} void rebb2(){ digitalWrite(d1,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d2,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,LOW); digitalWrite(e,LOW);} void rebb3(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d4,LOW); digitalWrite(d3,LOW);} void rebb4(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW);} void ebbb(){ digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d1,100); digitalWrite(f,LOW); digitalWrite(c,HIGH); digitalWrite(a,LOW); digitalWrite(d,LOW); digitalWrite(b,HIGH); digitalWrite(g,LOW); digitalWrite(e,LOW);} void ebbb2(){ digitalWrite(d1,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(d2,LOW); } void ebbb3(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d4,LOW); digitalWrite(d3,LOW);} void ebbb4(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW);} void n1(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,100); nine(); } void n2(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,100); digitalWrite(d4,LOW); nine(); } void n22(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,100); five(); } void n3(){ digitalWrite(d1,LOW); digitalWrite(d2,100); digitalWrite(d3,LOW); digitalWrite(d4,LOW); nine(); } void n32(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,100); digitalWrite(d4,LOW); five(); } void n33(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,100); zero(); } void n4(){ digitalWrite(d1,100); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); nine(); } void n42(){ digitalWrite(d1,LOW); digitalWrite(d2,100); digitalWrite(d3,LOW); digitalWrite(d4,LOW); five(); } void n43(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,100); digitalWrite(d4,LOW); zero(); } void n44(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,100); two(); } void nscroll(){ n1(); delay(58); n2(); delay(58); n22(); delay(58); n3(); delay(58); n32(); delay(58); n33(); delay(58); n4(); delay(58); n42(); delay(58); n43(); delay(58); n44(); delay(58); } void number(){ n4(); delay(4); n42(); delay(4); n43(); delay(4); n44(); delay(4); } void noid(){ digitalWrite(d1,LOW); digitalWrite(d2,LOW); digitalWrite(d3,LOW); digitalWrite(d4,LOW); digitalWrite(f,HIGH); digitalWrite(c,HIGH); digitalWrite(a,HIGH); digitalWrite(d,HIGH); digitalWrite(b,HIGH); digitalWrite(g,HIGH); digitalWrite(e,HIGH);} void hiScore(){ h(); delay(58); hi(); delay(58); hi2(); delay(58); hib(); delay(58); hib2(); delay(58); hibs(); delay(58); hibs2(); delay(58); hibs3(); delay(58); hibs4(); delay(58); ibsc(); delay(58); ibsc2(); delay(58); ibsc3(); delay(58); ibsc4(); delay(58); bsco(); delay(58); bsco2(); delay(58); bsco3(); delay(58); scor(); delay(58); scor2(); delay(58); scor3(); delay(58); scor4(); delay(58); core(); delay(58); core2(); delay(58); core3(); delay(58); core4(); delay(58); oreb(); delay(58); oreb2(); delay(58); oreb3(); delay(58); oreb4(); delay(58); rebb(); delay(58); rebb2(); delay(58); rebb3(); delay(58); rebb4(); delay(58); ebbb(); delay(58); ebbb2(); delay(58); ebbb3(); delay(58); ebbb4(); delay(58); noid(); delay(58); } void count(){ if(digitalRead (b1) == 1){ Counter = Counter+1; if(Counter>j){Counter=0;} } else{flag1=0;} showNumber((Counter/1000)%10); digitalWrite(d1, Common); delay(DTime); digitalWrite(d1, Off_C); showNumber((Counter/100)%10); digitalWrite(d2, Common); delay(DTime); digitalWrite(d2, Off_C); showNumber((Counter/10)%10); digitalWrite(d3, Common); delay(DTime); digitalWrite(d3, Off_C); showNumber(Counter%10); digitalWrite(d4, Common); delay(DTime); digitalWrite(d4, Off_C);} //if the buttons dont work like they should change b1 and b2 == from 1 to 0 (b1) == 0) (b2) ==0) void loop() { int l=digitalRead (b1); delay(1); if(l == 1){ count();} int k=digitalRead (b2); delay(10); if( k == 1){ dance(); dance(); dance(); dance(); dance(); dance(); noid(); delay(100); snake(); noid(); delay(100); hiScore(); delay(100); nscroll(); delay(100); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); noid(); delay(100); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); noid(); delay(500); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); noid(); delay(500); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); number(); noid(); delay(100); } } //digitalWrite(,HIGH); //digitalWrite(,LOW);