diff options
| author | Riku Isokoski <riksu9000@gmail.com> | 2021-08-28 14:10:01 (GMT) |
|---|---|---|
| committer | Riku Isokoski <riksu9000@gmail.com> | 2021-08-28 14:10:01 (GMT) |
| commit | c78177eedf0d08b7fef5771f694487d08658b557 (patch) | |
| tree | c0fd7ad7eeda80ad6f041f71766cbb67f1ba69c5 /src/drivers/TwiMaster.h | |
| parent | 2e8bc634dcae6e304b8f94e2633644fd55b64450 (diff) | |
| parent | fab49f8557ef8ff38fe4f607e33b18fb5a1aeb9a (diff) | |
Merge branch 'develop' into fit_more_tasks
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 6175b99..30ac6c5 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 +} |
