int segmentPins[] = {18,19,21,22,23,25,26,33};
int data[16][8] = { { 1,1,1,1,1,1,0,1 }, // 0 - 253
{ 0,1,1,0,0,0,0,1 }, // 1 - 97
{ 1,1,0,1,1,0,1,1 }, // 2 - 219
{ 1,1,1,1,0,0,1,1 }, // 3 - 243
{ 0,1,1,0,0,1,1,1 }, // 4 - 103
{ 1,0,1,1,0,1,1,1 }, // 5 - 183
{ 1,0,1,1,1,1,1,1 }, // 6 - 191
{ 1,1,1,0,0,0,0,1 }, // 7 - 225
{ 1,1,1,1,1,1,1,1 }, // 8 - 255
{ 1,1,1,0,0,1,1,1 }, // 9 - 231
{ 1,1,1,0,1,1,1,0 }, // A - 238
{ 0,0,1,1,1,1,1,0 }, // B - 62
{ 1,0,0,1,1,1,0,0 }, // C - 156
{ 0,1,1,1,1,0,1,0 }, // D - 122
{ 1,0,0,1,1,1,1,0 }, // E - 158
{ 1,0,0,0,1,1,1,0 } }; // F - 142
const int button = 15;
void numWrite(int number)
{
for (int j=0; j < 8; j++) {
digitalWrite(segmentPins[j], data[number][j]);
}
}
void setup()
{
Serial.begin(115200);
pinMode(button, INPUT_PULLUP);
for (int i = 0; i < 8; i++)
{
pinMode(segmentPins[i], OUTPUT);
}
}
void loop()
{
for (int counter = 0; counter <16 ; counter++)
{
delay(1000);
numWrite(counter);
}
delay(3000);
// For Electronic dice game project
if(digitalRead(button)==0){
uint8_t count =random(1,7);
numWrite(count);
Serial.println("New Number = " + String(count));
//delay(2000);
}
delay(200);
}