diff --git a/FlippR-Driver/src/output/OutputDriverFactory.cpp b/FlippR-Driver/src/output/OutputDriverFactory.cpp index 22cdee9..f557c5b 100644 --- a/FlippR-Driver/src/output/OutputDriverFactory.cpp +++ b/FlippR-Driver/src/output/OutputDriverFactory.cpp @@ -49,8 +49,7 @@ std::shared_ptr get_OutputDriver(const std::string & solenoid_conf auto display_board_pin_controller = std::make_shared(get_update_frequency(display_config_path)); auto displays = get_items(display_config_path, display_board_pin_controller); - auto update_frequency = get_update_frequency(display_config_path); - auto display_controller = std::make_unique(displays, display_board_pin_controller, update_frequency); + auto display_controller = std::make_unique(displays, display_board_pin_controller); return std::make_shared(std::move(display_controller), solenoids, lamps, sounds, flippers, displays); } diff --git a/FlippR-Driver/src/output/detail/DisplayBoardPinController.cpp b/FlippR-Driver/src/output/detail/DisplayBoardPinController.cpp index 1b9b834..9de98c1 100644 --- a/FlippR-Driver/src/output/detail/DisplayBoardPinController.cpp +++ b/FlippR-Driver/src/output/detail/DisplayBoardPinController.cpp @@ -9,8 +9,6 @@ #include "utility/config.h" - -#define DISPLAY_SLEEP_TIME_MICRO 10000 namespace flippR_driver { namespace output @@ -55,6 +53,7 @@ void DisplayBoardPinController::write_display(const items::OutputDisplay &displa for (uint8_t i = 0; i < content.size(); i++) { write_display_digit(display.get_address(), content.at(i) - '0', content.size() - i - 1); + std::this_thread::sleep_for(this->update_time); } } diff --git a/FlippR-Driver/src/output/detail/DisplayController.cpp b/FlippR-Driver/src/output/detail/DisplayController.cpp index e067b2e..c86f467 100644 --- a/FlippR-Driver/src/output/detail/DisplayController.cpp +++ b/FlippR-Driver/src/output/detail/DisplayController.cpp @@ -20,9 +20,8 @@ namespace detail DisplayController::DisplayController(std::map> & displays, std::shared_ptr pin_controller, - std::chrono::microseconds update_frequency ) - : pin_controller{pin_controller}, is_running(true), update_frequency(update_frequency) + : pin_controller{pin_controller}, is_running(true) { for (const auto& display : displays) { @@ -51,7 +50,6 @@ void DisplayController::cycle_displays() const while (is_running) { - std::this_thread::sleep_for(update_frequency); for (auto &display : this->displays) { pin_controller->write_display(*display); diff --git a/FlippR-Driver/src/output/detail/DisplayController.h b/FlippR-Driver/src/output/detail/DisplayController.h index 9f5faf7..4fd5e6a 100644 --- a/FlippR-Driver/src/output/detail/DisplayController.h +++ b/FlippR-Driver/src/output/detail/DisplayController.h @@ -27,7 +27,7 @@ class DisplayController : public output::DisplayController public: DisplayController(std::map> &displays, std::shared_ptr pin_controller, - std::chrono::microseconds update_frequency); + ); ~DisplayController() override; @@ -44,7 +44,6 @@ private: std::thread display_cycle_thread; bool is_running; - std::chrono::microseconds update_frequency; }; }