#include "SevSeg.h"
SevSeg sevseg; // Instantiate a seven segment controller object
const int button1Pin = A0; // Increase by 1
const int button2Pin = A1; // Increase by 2
const int button3Pin = A2; // Increase by 3
const int buttonDownPin = A3; // Decrease by 1
int counter = 0;
void setup() {
byte numDigits = 4;
byte digitPins[] = {2, 3, 4, 5};
byte segmentPins[] = {6, 7, 8, 9, 10, 11, 12, 13};
bool resistorsOnSegments = false;
byte hardwareConfig = COMMON_ANODE;
bool updateWithDelays = false;
bool leadingZeros = false;
bool disableDecPoint = false;
sevseg.begin(hardwareConfig, numDigits, digitPins, segmentPins, resistorsOnSegments,
updateWithDelays, leadingZeros, disableDecPoint);
sevseg.setBrightness(90);
pinMode(button1Pin, INPUT_PULLUP);
pinMode(button2Pin, INPUT_PULLUP);
pinMode(button3Pin, INPUT_PULLUP);
pinMode(buttonDownPin, INPUT_PULLUP);
}
void loop() {
if (digitalRead(button1Pin) == LOW) {
counter += 1;
delay(200);
}
if (digitalRead(button2Pin) == LOW) {
counter += 2;
delay(200);
}
if (digitalRead(button3Pin) == LOW) {
counter += 3;
delay(200);
}
if (digitalRead(buttonDownPin) == LOW) {
counter -= 1;
delay(200);
}
if (counter > 999) {
counter = 999;
}
if (counter < 0) {
counter = 0;
}
sevseg.setNumber(counter);
sevseg.refreshDisplay();
}