#include "SevSeg.h"
SevSeg sevseg;
int D1 = 13; int D2= 12; int D3 = 11; int D4 = 10;
int A = 9; int B = 8; int C = 7; int D = 6;
int E = 5; int F = 4; int G = 3;
int buzzer = 2;
int userInput;
void setup() {
byte numDigits = 4;
byte digitPins[] = {D1, D2, D3, D4};
byte segmentPins[] = {A, B, C, D, E, F, G};
bool resistorsOnSegments = true;
byte hardwareConfig = COMMON_CATHODE;
sevseg.begin(hardwareConfig, numDigits, digitPins, segmentPins, resistorsOnSegments);
sevseg.setBrightness(90);
Serial.begin(9600);
}
void loop() {
Serial.println("enter a number from 1 to 9999 : ");
while(Serial.available() == 0){
}
userInput = Serial.parseInt();
if(userInput > 0 && userInput <= 9999){
while(userInput > 0){
sevseg.setNumber(userInput);
sevseg.refreshDisplay();
for(int i=0; i<201; i++){
sevseg.refreshDisplay();
delay(5);
}
sevseg.refreshDisplay();
userInput--;
sevseg.refreshDisplay();
}
for(int i=0; i<=3; i++){
tone(buzzer, 1000); delay(500);
noTone(buzzer); delay(300);
}
}
else{
Serial.println("number incorrect !!");
}
}