Make the dice with a seven segment.
This commit is contained in:
+122
-22
@@ -1,37 +1,137 @@
|
|||||||
#include <Arduino.h>
|
#include <Arduino.h>
|
||||||
|
|
||||||
#define BLUE_LED 6
|
#define LED_A 2
|
||||||
#define YELLOW_LED 5
|
#define LED_B 3
|
||||||
#define RED_LED 3
|
#define LED_C 4
|
||||||
#define ANALOG_A0 A0
|
#define LED_D 5
|
||||||
|
#define LED_E 6
|
||||||
|
#define LED_F 7
|
||||||
|
#define LED_G 8
|
||||||
|
#define LED_DOT 9
|
||||||
|
#define BUTTON 10
|
||||||
|
|
||||||
int Voltage = 0;
|
int Rrrs = 0;
|
||||||
|
|
||||||
// Setup Section
|
// Setup Section
|
||||||
void setup() {
|
void setup() {
|
||||||
pinMode(BLUE_LED, OUTPUT);
|
pinMode(LED_A, OUTPUT);
|
||||||
pinMode(YELLOW_LED, OUTPUT);
|
pinMode(LED_B, OUTPUT);
|
||||||
pinMode(RED_LED, OUTPUT);
|
pinMode(LED_C, OUTPUT);
|
||||||
|
pinMode(LED_D, OUTPUT);
|
||||||
|
pinMode(LED_E, OUTPUT);
|
||||||
|
pinMode(LED_F, OUTPUT);
|
||||||
|
pinMode(LED_G, OUTPUT);
|
||||||
|
pinMode(LED_DOT, OUTPUT);
|
||||||
|
|
||||||
|
pinMode(BUTTON, INPUT);
|
||||||
|
|
||||||
|
randomSeed(analogRead(A0));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Loop Section
|
// Loop Section
|
||||||
void loop() {
|
void loop() {
|
||||||
Voltage = analogRead(ANALOG_A0);
|
if (Rrrs == 0) {
|
||||||
Voltage = Voltage / 4;
|
if (digitalRead(BUTTON) == LOW) {
|
||||||
|
Rrrs = random(1, 7);
|
||||||
|
|
||||||
if (Voltage > 170 && Voltage <= 255) {
|
for (int led = 2; led < 10; led++) {
|
||||||
analogWrite(RED_LED, Voltage-170);
|
digitalWrite(led, HIGH);
|
||||||
analogWrite(YELLOW_LED, 0);
|
delay(100);
|
||||||
analogWrite(BLUE_LED, 0);
|
|
||||||
}
|
}
|
||||||
else if (Voltage > 85 && Voltage <= 170) {
|
|
||||||
analogWrite(RED_LED, 0);
|
|
||||||
analogWrite(YELLOW_LED, Voltage-85);
|
|
||||||
analogWrite(BLUE_LED, 0);
|
|
||||||
}
|
}
|
||||||
else {
|
|
||||||
analogWrite(RED_LED, 0);
|
switch (Rrrs) {
|
||||||
analogWrite(YELLOW_LED, 0);
|
case 1:
|
||||||
analogWrite(BLUE_LED, Voltage);
|
digitalWrite(LED_A, LOW);
|
||||||
|
digitalWrite(LED_B, HIGH);
|
||||||
|
digitalWrite(LED_C, HIGH);
|
||||||
|
digitalWrite(LED_D, LOW);
|
||||||
|
digitalWrite(LED_E, LOW);
|
||||||
|
digitalWrite(LED_F, LOW);
|
||||||
|
digitalWrite(LED_G, LOW);
|
||||||
|
digitalWrite(LED_DOT, LOW);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
digitalWrite(LED_A, HIGH);
|
||||||
|
digitalWrite(LED_B, HIGH);
|
||||||
|
digitalWrite(LED_C, LOW);
|
||||||
|
digitalWrite(LED_D, HIGH);
|
||||||
|
digitalWrite(LED_E, HIGH);
|
||||||
|
digitalWrite(LED_F, LOW);
|
||||||
|
digitalWrite(LED_G, HIGH);
|
||||||
|
digitalWrite(LED_DOT, LOW);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
digitalWrite(LED_A, HIGH);
|
||||||
|
digitalWrite(LED_B, HIGH);
|
||||||
|
digitalWrite(LED_C, HIGH);
|
||||||
|
digitalWrite(LED_D, HIGH);
|
||||||
|
digitalWrite(LED_E, LOW);
|
||||||
|
digitalWrite(LED_F, LOW);
|
||||||
|
digitalWrite(LED_G, HIGH);
|
||||||
|
digitalWrite(LED_DOT, LOW);
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
digitalWrite(LED_A, LOW);
|
||||||
|
digitalWrite(LED_B, HIGH);
|
||||||
|
digitalWrite(LED_C, HIGH);
|
||||||
|
digitalWrite(LED_D, LOW);
|
||||||
|
digitalWrite(LED_E, LOW);
|
||||||
|
digitalWrite(LED_F, HIGH);
|
||||||
|
digitalWrite(LED_G, HIGH);
|
||||||
|
digitalWrite(LED_DOT, LOW);
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
digitalWrite(LED_A, HIGH);
|
||||||
|
digitalWrite(LED_B, LOW);
|
||||||
|
digitalWrite(LED_C, HIGH);
|
||||||
|
digitalWrite(LED_D, HIGH);
|
||||||
|
digitalWrite(LED_E, LOW);
|
||||||
|
digitalWrite(LED_F, HIGH);
|
||||||
|
digitalWrite(LED_G, HIGH);
|
||||||
|
digitalWrite(LED_DOT, LOW);
|
||||||
|
break;
|
||||||
|
case 6:
|
||||||
|
digitalWrite(LED_A, HIGH);
|
||||||
|
digitalWrite(LED_B, LOW);
|
||||||
|
digitalWrite(LED_C, HIGH);
|
||||||
|
digitalWrite(LED_D, HIGH);
|
||||||
|
digitalWrite(LED_E, HIGH);
|
||||||
|
digitalWrite(LED_F, HIGH);
|
||||||
|
digitalWrite(LED_G, HIGH);
|
||||||
|
digitalWrite(LED_DOT, LOW);
|
||||||
|
break;
|
||||||
|
case 7:
|
||||||
|
digitalWrite(LED_A, HIGH);
|
||||||
|
digitalWrite(LED_B, HIGH);
|
||||||
|
digitalWrite(LED_C, HIGH);
|
||||||
|
digitalWrite(LED_D, LOW);
|
||||||
|
digitalWrite(LED_E, LOW);
|
||||||
|
digitalWrite(LED_F, LOW);
|
||||||
|
digitalWrite(LED_G, LOW);
|
||||||
|
digitalWrite(LED_DOT, LOW);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
digitalWrite(LED_A, LOW);
|
||||||
|
digitalWrite(LED_B, LOW);
|
||||||
|
digitalWrite(LED_C, LOW);
|
||||||
|
digitalWrite(LED_D, LOW);
|
||||||
|
digitalWrite(LED_E, LOW);
|
||||||
|
digitalWrite(LED_F, LOW);
|
||||||
|
digitalWrite(LED_G, LOW);
|
||||||
|
digitalWrite(LED_DOT, LOW);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (Rrrs != 0 && digitalRead(BUTTON) == LOW) {
|
||||||
|
Rrrs = 0;
|
||||||
|
digitalWrite(LED_A, LOW);
|
||||||
|
digitalWrite(LED_B, LOW);
|
||||||
|
digitalWrite(LED_C, LOW);
|
||||||
|
digitalWrite(LED_D, LOW);
|
||||||
|
digitalWrite(LED_E, LOW);
|
||||||
|
digitalWrite(LED_F, LOW);
|
||||||
|
digitalWrite(LED_G, LOW);
|
||||||
|
digitalWrite(LED_DOT, LOW);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user