summaryrefslogtreecommitdiffstats
path: root/main/main.c
diff options
context:
space:
mode:
authorSadeep Madurange <sadeep@asciimx.com>2023-09-24 15:32:26 +0800
committerSadeep Madurange <sadeep@asciimx.com>2023-09-24 15:32:26 +0800
commit825705c2993aa3dd69d0966de8f531d48de0b210 (patch)
treec76245f9ca8e724ae02b3ec15d95c639633063ae /main/main.c
parentcf2092a08775d32b7d874f1090f79228a2f9e2ec (diff)
downloadesp32-e-reader-825705c2993aa3dd69d0966de8f531d48de0b210.tar.gz
Improvements to pdftool and EPD sleep.
Diffstat (limited to 'main/main.c')
-rw-r--r--main/main.c33
1 files changed, 25 insertions, 8 deletions
diff --git a/main/main.c b/main/main.c
index 36e7ed9..526a134 100644
--- a/main/main.c
+++ b/main/main.c
@@ -7,7 +7,7 @@
#include "epd.h"
#include "util.h"
-#include "pocorgtfo21.h"
+#include "doc.h"
#define IO_PG_PREV GPIO_NUM_21
#define IO_PG_NEXT GPIO_NUM_22
@@ -24,14 +24,31 @@ static void gpio_task(void* arg)
for(;;) {
if(xQueueReceive(gpio_evt_queue, &io_num, portMAX_DELAY)) {
- if (io_num == IO_PG_NEXT && page < data_len - 1)
- epd_draw(data[++page]);
- else if (io_num == IO_PG_PREV && page > 0)
- epd_draw(data[--page]);
- else
+ if (io_num == IO_PG_NEXT) {
+ if (page < data_len - 1) {
+ epd_draw(data[++page]);
+ gpio_intr_enable(IO_PG_NEXT);
+ gpio_intr_enable(IO_PG_PREV);
+ } else {
+ epd_clear();
+ epd_sleep();
+ }
+ }
+ else if (io_num == IO_PG_PREV) {
+ if (page > 0) {
+ epd_draw(data[--page]);
+ gpio_intr_enable(IO_PG_NEXT);
+ gpio_intr_enable(IO_PG_PREV);
+ } else {
+ epd_clear();
+ epd_sleep();
+ }
+ }
+ else {
delay_ms(500);
- gpio_intr_enable(IO_PG_NEXT);
- gpio_intr_enable(IO_PG_PREV);
+ gpio_intr_enable(IO_PG_NEXT);
+ gpio_intr_enable(IO_PG_PREV);
+ }
}
}
}