summaryrefslogtreecommitdiff
path: root/src/drivers/TwiMaster.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/drivers/TwiMaster.cpp')
-rw-r--r--src/drivers/TwiMaster.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/drivers/TwiMaster.cpp b/src/drivers/TwiMaster.cpp
index 0123892..a9eb5d0 100644
--- a/src/drivers/TwiMaster.cpp
+++ b/src/drivers/TwiMaster.cpp
@@ -1,5 +1,5 @@
#include <nrfx_log.h>
-#include <nrf_gpio.h>
+#include <hal/nrf_gpio.h>
#include <cstring>
#include "TwiMaster.h"
@@ -138,3 +138,17 @@ void TwiMaster::Write(uint8_t deviceAddress, const uint8_t *data, size_t size, b
twiBaseAddress->ERRORSRC = error;
}
}
+
+void TwiMaster::Sleep() {
+ while(twiBaseAddress->ENABLE != 0) {
+ twiBaseAddress->ENABLE = (TWIM_ENABLE_ENABLE_Disabled << TWIM_ENABLE_ENABLE_Pos);
+ }
+ nrf_gpio_cfg_default(6);
+ nrf_gpio_cfg_default(7);
+ NRF_LOG_INFO("[TWIMASTER] Sleep");
+}
+
+void TwiMaster::Wakeup() {
+ Init();
+ NRF_LOG_INFO("[TWIMASTER] Wakeup");
+}