@@ -929,8 +929,8 @@ class Ads7138 {
929929 logger_.info (" Setting digital mode for outputs {} and inputs {}" , digital_outputs_,
930930 digital_inputs_);
931931 uint8_t data = 0 ;
932- std::accumulate (digital_inputs_.begin (), digital_inputs_.end (), data, bit_pred);
933- std::accumulate (digital_outputs_.begin (), digital_outputs_.end (), data, bit_pred);
932+ data = std::accumulate (digital_inputs_.begin (), digital_inputs_.end (), data, bit_pred);
933+ data = std::accumulate (digital_outputs_.begin (), digital_outputs_.end (), data, bit_pred);
934934 // don't have to do anything for analog inputs since they are the default
935935 // state (0)
936936 write_one_ (Register::PIN_CFG, data, ec);
@@ -939,8 +939,7 @@ class Ads7138 {
939939 void set_digital_io_direction (std::error_code &ec) {
940940 logger_.info (" Setting digital output for pins {}" , digital_outputs_);
941941 // default direction is input (0)
942- uint8_t data = 0 ;
943- std::accumulate (digital_outputs_.begin (), digital_outputs_.end (), data, bit_pred);
942+ uint8_t data = std::accumulate (digital_outputs_.begin (), digital_outputs_.end (), 0 , bit_pred);
944943 write_one_ (Register::GPIO_CFG, data, ec);
945944 }
946945
@@ -949,8 +948,7 @@ class Ads7138 {
949948 if (mode_ == Mode::AUTONOMOUS) {
950949 logger_.info (" Setting analog inputs for autonomous mode" );
951950 // configure the analog inputs for autonomous conversion sequence
952- uint8_t data = 0 ;
953- std::accumulate (analog_inputs_.begin (), analog_inputs_.end (), data, bit_pred);
951+ uint8_t data = std::accumulate (analog_inputs_.begin (), analog_inputs_.end (), 0 , bit_pred);
954952 write_one_ (Register::AUTO_SEQ_CH_SEL, data, ec);
955953 }
956954 }
0 commit comments