#include "SevSeg.h"
SevSeg sevseg; // Instantiate a seven-segment controller object
void setup() {
byte numDigits = 3;
byte digitPins[] = {2, 3, 4};
byte segmentPins[] = {6, 7, 8, 9, 10, 11, 12, 13};
bool resistorsOnSegments = false; // 'false' means resistors are on digit pins
byte hardwareConfig = COMMON_ANODE; // See README.md for options
bool updateWithDelays = false; // Default 'false' is Recommended
bool leadingZeros = false; // Use 'true' if you'd like to keep the leading zeros
bool disableDecPoint = false; // Use 'true' if your decimal point doesn't exist or isn't connected
sevseg.begin(hardwareConfig, numDigits, digitPins, segmentPins, resistorsOnSegments,
updateWithDelays, leadingZeros, disableDecPoint);
sevseg.setBrightness(90);
}
int i = 0;
bool motion0 = false;
bool motion1 = false;
void loop() {
sevseg.setNumber(i);
delay(1);
sevseg.refreshDisplay();
handleButton(1, motion1, i);
handleButton(0, motion0, i);
}
void handleButton(int buttonPin, bool &motionFlag, int &value) {
if (digitalRead(buttonPin) == HIGH && !motionFlag) {
value += (buttonPin == 1) ? 1 : value == 0 ? 0 : -1;
motionFlag = true;
// if(buttonPin == 1) Serial.println("Kendaraan masuk");
// else Serial.println("Kendaraan keluar");
}
if (digitalRead(buttonPin) == LOW && motionFlag) {
motionFlag = false;
}
}
Motion sensor kalo ada yg keluar
Motion sensor kalo ada yg masuk