Fix update on battery power by reintroducing timeouts

pull/900/head
f 2024-01-29 10:48:31 +01:00
rodzic 392d75b00d
commit 1858f21fc3
2 zmienionych plików z 13 dodań i 4 usunięć

Wyświetl plik

@ -43,11 +43,20 @@ namespace pimoroni {
TSSET = 0xE6 // E5 or E6
};
int timeout = 0;
bool Inky73::is_busy() {
return !(sr.read() & 128);
bool busy = !(sr.read() & 128);
if (!busy) {
return false;
} else if(absolute_time_diff_us(get_absolute_time(), timeout) < 0) {
return false;
}
return true;
}
void Inky73::busy_wait() {
void Inky73::busy_wait(uint maximum_wait_ms=30000) {
timeout = make_timeout_time_ms(maximum_wait_ms);
while(is_busy()) {
tight_loop_contents();
}
@ -56,7 +65,7 @@ namespace pimoroni {
void Inky73::reset() {
gpio_put(RESET, 0); sleep_ms(10);
gpio_put(RESET, 1); sleep_ms(10);
busy_wait();
busy_wait(5000);
}
void Inky73::init() {

Wyświetl plik

@ -70,7 +70,7 @@ namespace pimoroni {
// Methods
//--------------------------------------------------
public:
void busy_wait();
void busy_wait(uint maximum_wait_ms);
void reset();
void power_off();