diff --git a/include/userFunctions.h b/include/userFunctions.h index 427a139..40e6cb5 100644 --- a/include/userFunctions.h +++ b/include/userFunctions.h @@ -1,3 +1,4 @@ #pragma once +void volumeUp(int *userVolume, int *oldUserVolume, int maxVolume); void volumeDown(int *userVolume, int *oldUserVolume); \ No newline at end of file diff --git a/src/main.cpp b/src/main.cpp index 31e54c6..7ac911c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -170,26 +170,7 @@ void loop() // Make sure we are not is a state of mute or lowered if (debounceRead(REMOTE_B) && !(oldUserVolume > userVolume)) { - if ((userVolume + USER_STEPS) > maxVolume) - { - for (int i = 0; i < maxVolume - userVolume; i++) - { - potIncrement(); - } - - userVolume = maxVolume; - oldUserVolume = userVolume; - } - else - { - for (int i = 0; i < USER_STEPS; i++) - { - potIncrement(); - } - - userVolume += USER_STEPS; - oldUserVolume = userVolume; - } + volumeUp(&userVolume, &oldUserVolume, maxVolume); } // Remote C - Volume Down diff --git a/src/userFunctions.cpp b/src/userFunctions.cpp index db03327..1229b1a 100644 --- a/src/userFunctions.cpp +++ b/src/userFunctions.cpp @@ -2,6 +2,30 @@ #include #include +void volumeUp(int *userVolume, int *oldUserVolume, int maxVolume) +{ + if ((*userVolume + USER_STEPS) > maxVolume) + { + for (int i = 0; i < maxVolume - *userVolume; i++) + { + potIncrement(); + } + + *userVolume = maxVolume; + *oldUserVolume = *userVolume; + } + else + { + for (int i = 0; i < USER_STEPS; i++) + { + potIncrement(); + } + + *userVolume += USER_STEPS; + *oldUserVolume = *userVolume; + } +} + void volumeDown(int *userVolume, int *oldUserVolume) { if ((*userVolume - USER_STEPS) < 0)