diff options
author | Riku Isokoski <riksu9000@gmail.com> | 2021-08-28 16:54:40 +0300 |
---|---|---|
committer | Riku Isokoski <riksu9000@gmail.com> | 2021-08-28 16:54:40 +0300 |
commit | 085c9ab2e15b35af01d73e823a87994a7a24a76f (patch) | |
tree | 159c492ca36007f6239739fa46f7deb95be2d3bf /src/drivers/TwiMaster.h | |
parent | 044036e884039237ade739d46b682e586a36e8df (diff) | |
parent | fab49f8557ef8ff38fe4f607e33b18fb5a1aeb9a (diff) |
Merge branch 'develop' into timer_battery_reading
Diffstat (limited to 'src/drivers/TwiMaster.h')
-rw-r--r-- | src/drivers/TwiMaster.h | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/drivers/TwiMaster.h b/src/drivers/TwiMaster.h index 6175b99b..30ac6c5f 100644 --- a/src/drivers/TwiMaster.h +++ b/src/drivers/TwiMaster.h @@ -8,16 +8,9 @@ namespace Pinetime { namespace Drivers { class TwiMaster { public: - enum class Modules { TWIM1 }; - enum class Frequencies { Khz100, Khz250, Khz400 }; enum class ErrorCodes { NoError, TransactionFailed }; - struct Parameters { - uint32_t frequency; - uint8_t pinSda; - uint8_t pinScl; - }; - TwiMaster(const Modules module, const Parameters& params); + TwiMaster(NRF_TWIM_Type* module, uint32_t frequency, uint8_t pinSda, uint8_t pinScl); void Init(); ErrorCodes Read(uint8_t deviceAddress, uint8_t registerAddress, uint8_t* buffer, size_t size); @@ -30,10 +23,14 @@ namespace Pinetime { ErrorCodes Read(uint8_t deviceAddress, uint8_t* buffer, size_t size, bool stop); ErrorCodes Write(uint8_t deviceAddress, const uint8_t* data, size_t size, bool stop); void FixHwFreezed(); + void ConfigurePins() const; + NRF_TWIM_Type* twiBaseAddress; SemaphoreHandle_t mutex = nullptr; - const Modules module; - const Parameters params; + NRF_TWIM_Type* module; + uint32_t frequency; + uint8_t pinSda; + uint8_t pinScl; static constexpr uint8_t maxDataSize {16}; static constexpr uint8_t registerSize {1}; uint8_t internalBuffer[maxDataSize + registerSize]; @@ -41,4 +38,4 @@ namespace Pinetime { static constexpr uint32_t HwFreezedDelay {161000}; }; } -}
\ No newline at end of file +} |