rewrite clear

This commit is contained in:
Jonas Zeunert
2020-01-16 21:17:22 +01:00
parent 72f3805b01
commit f9d4a37fec
2 changed files with 7 additions and 15 deletions

View File

@@ -29,7 +29,7 @@ void DriverBoardPinController::activate(items::DriverBoardItem &driver_board_ite
uint8_t address = driver_board_item.get_address(); uint8_t address = driver_board_item.get_address();
this->select_adress(address); this->select_address(address);
write_pin(this->data_pin, true); write_pin(this->data_pin, true);
this->select_mux(address/8); this->select_mux(address/8);
@@ -45,7 +45,7 @@ void DriverBoardPinController::deactivate(items::DriverBoardItem &driver_board_i
uint8_t address = driver_board_item.get_address(); uint8_t address = driver_board_item.get_address();
this->select_adress(address); this->select_address(address);
write_pin(this->data_pin, false); write_pin(this->data_pin, false);
this->select_mux(address/8); this->select_mux(address/8);
@@ -53,7 +53,7 @@ void DriverBoardPinController::deactivate(items::DriverBoardItem &driver_board_i
this->deselect_all_muxes(); this->deselect_all_muxes();
} }
void DriverBoardPinController::select_adress(uint8_t address) void DriverBoardPinController::select_address(uint8_t address)
{ {
address = address % 8; address = address % 8;
write_pin(this->address_pins[0], address & 0b001); write_pin(this->address_pins[0], address & 0b001);
@@ -76,18 +76,10 @@ void DriverBoardPinController::deselect_all_muxes()
void DriverBoardPinController::clear() void DriverBoardPinController::clear()
{ {
write_pin(data_pin, 0); CLOG(DEBUG, OUTPUT_LOGGER) << "Clear Driver Board items!";
for(auto mux : mux_enable_pins)
{
select_mux(mux);
}
for(uint8_t i = 0; i<8; i++)
{
select_adress(i);
}
this->deselect_all_muxes(); this->deselect_all_muxes();
write_pin(run_pin, 1);
write_pin(run_pin, 0);
} }
void DriverBoardPinController::set_address_pins(std::array<uint8_t, 3> address_pins) void DriverBoardPinController::set_address_pins(std::array<uint8_t, 3> address_pins)

View File

@@ -37,7 +37,7 @@ public:
private: private:
void deselect_all_muxes(); void deselect_all_muxes();
void select_mux(uint8_t mux); void select_mux(uint8_t mux);
void select_adress(uint8_t address); void select_address(uint8_t address);
private: private:
std::shared_ptr<std::mutex> output_item_mutex; std::shared_ptr<std::mutex> output_item_mutex;