diff options
| author | Radomir Dopieralski <openstack@sheep.art.pl> | 2018-08-23 23:22:47 +0200 |
|---|---|---|
| committer | Radomir Dopieralski <openstack@sheep.art.pl> | 2019-02-28 23:34:03 +0100 |
| commit | 59f63eaef6d1024163864c9b30f879efc9dfd682 (patch) | |
| tree | 30c08d2c5e052e0929b932d835605ffe845aa952 /shared-module/_pew/PewPew.c | |
| parent | 0a5c1c94025a1d36762d14b48995337b0f09ce97 (diff) | |
Handle new buttons
Diffstat (limited to 'shared-module/_pew/PewPew.c')
| -rw-r--r-- | shared-module/_pew/PewPew.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/shared-module/_pew/PewPew.c b/shared-module/_pew/PewPew.c index de1224a37..27c2d1c99 100644 --- a/shared-module/_pew/PewPew.c +++ b/shared-module/_pew/PewPew.c @@ -52,16 +52,17 @@ void pewpew_interrupt_handler(uint8_t index) { } void pew_init() { - pew_obj_t* pew_singleton = MP_STATE_VM(pew_singleton); - for (size_t i = 0; i < pew_singleton->rows_size; ++i) { - digitalio_digitalinout_obj_t *pin = MP_OBJ_TO_PTR( - pew_singleton->rows[i]); + pew_obj_t* pew = MP_STATE_VM(pew_singleton); + + common_hal_digitalio_digitalinout_switch_to_input(pew->buttons, PULL_UP); + + for (size_t i = 0; i < pew->rows_size; ++i) { + digitalio_digitalinout_obj_t *pin = MP_OBJ_TO_PTR(pew->rows[i]); common_hal_digitalio_digitalinout_switch_to_output(pin, false, DRIVE_MODE_PUSH_PULL); } - for (size_t i = 0; i < pew_singleton->cols_size; ++i) { - digitalio_digitalinout_obj_t *pin = MP_OBJ_TO_PTR( - pew_singleton->cols[i]); + for (size_t i = 0; i < pew->cols_size; ++i) { + digitalio_digitalinout_obj_t *pin = MP_OBJ_TO_PTR(pew->cols[i]); common_hal_digitalio_digitalinout_switch_to_output(pin, true, DRIVE_MODE_OPEN_DRAIN); } |
