diff options
| author | jacqueline <me@jacqueline.id.au> | 2022-10-12 11:59:42 +1100 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2022-10-12 11:59:42 +1100 |
| commit | 4fc5f931acf5bdc582fdad3cb48e6810964198c5 (patch) | |
| tree | 9057debaa13ec996450a63adf5f3228cd5ff1b54 /main/gpio-expander.cpp | |
| parent | efd5392f6cf2149369d7d3170400bbe8f2d5c82e (diff) | |
| download | tangara-fw-4fc5f931acf5bdc582fdad3cb48e6810964198c5.tar.gz | |
WIP use result<> and RAII
Diffstat (limited to 'main/gpio-expander.cpp')
| -rw-r--r-- | main/gpio-expander.cpp | 34 |
1 files changed, 15 insertions, 19 deletions
diff --git a/main/gpio-expander.cpp b/main/gpio-expander.cpp index 389fb333..36cf37b0 100644 --- a/main/gpio-expander.cpp +++ b/main/gpio-expander.cpp @@ -1,9 +1,9 @@ #include "gpio-expander.h" -#include "i2c.h" - #include <cstdint> +#include "i2c.h" + namespace gay_ipod { GpioExpander::GpioExpander() { @@ -32,9 +32,9 @@ esp_err_t GpioExpander::Write() { I2CTransaction transaction; transaction.start() - .write_addr(kPca8575Address, I2C_MASTER_WRITE) - .write_ack(ports_ab.first, ports_ab.second) - .stop(); + .write_addr(kPca8575Address, I2C_MASTER_WRITE) + .write_ack(ports_ab.first, ports_ab.second) + .stop(); return transaction.Execute(); } @@ -44,10 +44,10 @@ esp_err_t GpioExpander::Read() { I2CTransaction transaction; transaction.start() - .write_addr(kPca8575Address, I2C_MASTER_READ) - .read(&input_a, I2C_MASTER_ACK) - .read(&input_b, I2C_MASTER_LAST_NACK) - .stop(); + .write_addr(kPca8575Address, I2C_MASTER_READ) + .read(&input_a, I2C_MASTER_ACK) + .read(&input_b, I2C_MASTER_LAST_NACK) + .stop(); esp_err_t ret = transaction.Execute(); inputs_ = pack(input_a, input_b); @@ -55,7 +55,7 @@ esp_err_t GpioExpander::Read() { } void GpioExpander::set_pin(ChipSelect cs, bool value) { - set_pin((Pin) cs, value); + set_pin((Pin)cs, value); } void GpioExpander::set_pin(Pin pin, bool value) { @@ -75,16 +75,12 @@ GpioExpander::SpiLock GpioExpander::AcquireSpiBus(ChipSelect cs) { } GpioExpander::SpiLock::SpiLock(GpioExpander& gpio, ChipSelect cs) - : lock_(gpio.cs_mutex_), gpio_(gpio), cs_(cs) { - gpio_.with([&](auto& gpio) { - gpio.set_pin(cs_, 0); - }); + : lock_(gpio.cs_mutex_), gpio_(gpio), cs_(cs) { + gpio_.with([&](auto& gpio) { gpio.set_pin(cs_, 0); }); } -GpioExpander::SpiLock::~SpiLock() { - gpio_.with([&](auto& gpio) { - gpio.set_pin(cs_, 1); - }); +GpioExpander::SpiLock::~SpiLock() { + gpio_.with([&](auto& gpio) { gpio.set_pin(cs_, 1); }); } -} // namespace gay_ipod +} // namespace gay_ipod |
