Components and supplies
6
5 mm LED: Red
1
Arduino UNO
6
Resistor 221 ohm
1
Breadboard (generic)
1
Pushbutton switch 12mm
1
Resistor 10k ohm
8
Jumper wires (generic)
Apps and platforms
1
Arduino IDE
Project description
Code
Code
csharp
Use with IDE Arduino
1//delay time variable 2#define d 200 3//led pins: 4int led1=3; 5int led2=4; 6int led3=5; 7int led4=6; 8int led5=7; 9int led6=8; 10//button pin: 11int button=2; 12//variable of the result: 13int result; 14void setup() { 15 //leds as OUTPUT 16 pinMode(led1, OUTPUT); 17 pinMode(led2, OUTPUT); 18 pinMode(led3, OUTPUT); 19 pinMode(led4, OUTPUT); 20 pinMode(led5, OUTPUT); 21 pinMode(led6, OUTPUT); 22 //button as INPUT_PULLUP (sends LOW when pressed) 23 pinMode(button, INPUT_PULLUP); 24 25} 26 27void loop() { 28 if(digitalRead(button)==LOW){ //if button pressed: 29 result=random(7); //result will generate a random number between 0 and 6 30 //random function just select a random number 31 } 32 switch(result){ 33 case 0: //case result = 0 34 //leds turn off 35 digitalWrite(led6, LOW); 36 digitalWrite(led5, LOW); 37 digitalWrite(led4, LOW); 38 digitalWrite(led3, LOW); 39 digitalWrite(led2, LOW); 40 digitalWrite(led1, LOW); 41 delay(d); //wait 200 milliseconds 42 break; 43 case 1: //case result = 1 44 //one led turn on 45 digitalWrite(led6, HIGH); 46 digitalWrite(led5, LOW); 47 digitalWrite(led4, LOW); 48 digitalWrite(led3, LOW); 49 digitalWrite(led2, LOW); 50 digitalWrite(led1, LOW); 51 delay(d); //wait 200 milliseconds 52 break; 53 //two leds turn on 54 case 2: //case result = 2 55 digitalWrite(led6, HIGH); 56 digitalWrite(led5, HIGH); 57 digitalWrite(led4, LOW); 58 digitalWrite(led3, LOW); 59 digitalWrite(led2, LOW); 60 digitalWrite(led1, LOW); 61 delay(d); //wait 200 milliseconds 62 break; 63 //three leds turn on 64 case 3: //case result = 3 65 digitalWrite(led6, HIGH); 66 digitalWrite(led5, HIGH); 67 digitalWrite(led4, HIGH); 68 digitalWrite(led3, LOW); 69 digitalWrite(led2, LOW); 70 digitalWrite(led1, LOW); 71 delay(d); //wait 200 milliseconds 72 break; 73 //four leds turn on 74 case 4: //case result = 4 75 digitalWrite(led6, HIGH); 76 digitalWrite(led5, HIGH); 77 digitalWrite(led4, HIGH); 78 digitalWrite(led3, HIGH); 79 digitalWrite(led2, LOW); 80 digitalWrite(led1, LOW); 81 delay(d); //wait 200 milliseconds 82 break; 83 //five leds turn on 84 case 5: //case result = 5 85 digitalWrite(led6, HIGH); 86 digitalWrite(led5, HIGH); 87 digitalWrite(led4, HIGH); 88 digitalWrite(led3, HIGH); 89 digitalWrite(led2, HIGH); 90 digitalWrite(led1, LOW); 91 delay(d); //wait 200 milliseconds 92 break; 93 //six leds turn on 94 case 6: //case result = 6 95 digitalWrite(led6, HIGH); 96 digitalWrite(led5, HIGH); 97 digitalWrite(led4, HIGH); 98 digitalWrite(led3, HIGH); 99 digitalWrite(led2, HIGH); 100 digitalWrite(led1, HIGH); 101 delay(d); //wait 200 milliseconds 102 break; 103 } 104}
Code
csharp
Use with IDE Arduino
1//delay time variable 2#define d 200 3//led pins: 4int led1=3; 5int 6 led2=4; 7int led3=5; 8int led4=6; 9int led5=7; 10int led6=8; 11//button 12 pin: 13int button=2; 14//variable of the result: 15int result; 16void setup() 17 { 18 //leds as OUTPUT 19 pinMode(led1, OUTPUT); 20 pinMode(led2, OUTPUT); 21 22 pinMode(led3, OUTPUT); 23 pinMode(led4, OUTPUT); 24 pinMode(led5, OUTPUT); 25 26 pinMode(led6, OUTPUT); 27 //button as INPUT_PULLUP (sends LOW when pressed) 28 29 pinMode(button, INPUT_PULLUP); 30 31} 32 33void loop() { 34 if(digitalRead(button)==LOW){ 35 //if button pressed: 36 result=random(7); //result will generate a random number 37 between 0 and 6 38 //random function just select a random number 39 } 40 41 switch(result){ 42 case 0: //case result = 0 43 //leds turn off 44 45 digitalWrite(led6, LOW); 46 digitalWrite(led5, LOW); 47 digitalWrite(led4, 48 LOW); 49 digitalWrite(led3, LOW); 50 digitalWrite(led2, LOW); 51 52 digitalWrite(led1, LOW); 53 delay(d); //wait 200 milliseconds 54 55 break; 56 case 1: //case result = 1 57 //one led turn 58 on 59 digitalWrite(led6, HIGH); 60 digitalWrite(led5, LOW); 61 62 digitalWrite(led4, LOW); 63 digitalWrite(led3, LOW); 64 digitalWrite(led2, 65 LOW); 66 digitalWrite(led1, LOW); 67 delay(d); //wait 68 200 milliseconds 69 break; 70 //two leds turn on 71 case 72 2: //case result = 2 73 digitalWrite(led6, HIGH); 74 digitalWrite(led5, 75 HIGH); 76 digitalWrite(led4, LOW); 77 digitalWrite(led3, 78 LOW); 79 digitalWrite(led2, LOW); 80 digitalWrite(led1, LOW); 81 82 delay(d); //wait 200 milliseconds 83 break; 84 85 //three leds turn on 86 case 3: //case result = 3 87 digitalWrite(led6, 88 HIGH); 89 digitalWrite(led5, HIGH); 90 digitalWrite(led4, 91 HIGH); 92 digitalWrite(led3, LOW); 93 digitalWrite(led2, LOW); 94 95 digitalWrite(led1, LOW); 96 delay(d); //wait 200 milliseconds 97 98 break; 99 //four leds turn on 100 case 4: //case 101 result = 4 102 digitalWrite(led6, HIGH); 103 digitalWrite(led5, 104 HIGH); 105 digitalWrite(led4, HIGH); 106 digitalWrite(led3, 107 HIGH); 108 digitalWrite(led2, LOW); 109 digitalWrite(led1, LOW); 110 111 delay(d); //wait 200 milliseconds 112 break; 113 //five 114 leds turn on 115 case 5: //case result = 5 116 digitalWrite(led6, 117 HIGH); 118 digitalWrite(led5, HIGH); 119 digitalWrite(led4, 120 HIGH); 121 digitalWrite(led3, HIGH); 122 digitalWrite(led2, HIGH); 123 124 digitalWrite(led1, LOW); 125 delay(d); //wait 200 milliseconds 126 127 break; 128 //six leds turn on 129 case 6: //case 130 result = 6 131 digitalWrite(led6, HIGH); 132 digitalWrite(led5, 133 HIGH); 134 digitalWrite(led4, HIGH); 135 digitalWrite(led3, 136 HIGH); 137 digitalWrite(led2, HIGH); 138 digitalWrite(led1, HIGH); 139 140 delay(d); //wait 200 milliseconds 141 break; 142 143 } 144}
Downloadable files
Squematic
Circuit squematic, using TinkerCAD
Squematic

Comments
Only logged in users can leave comments