kopia lustrzana https://github.com/pimoroni/pimoroni-pico
Wakeup: Add method to reset latched SR state.
rodzic
f1e9e00cd5
commit
5251baf764
|
@ -2,11 +2,13 @@
|
|||
|
||||
STATIC MP_DEFINE_CONST_FUN_OBJ_0(Wakeup_get_gpio_state_obj, Wakeup_get_gpio_state);
|
||||
STATIC MP_DEFINE_CONST_FUN_OBJ_0(Wakeup_get_shift_state_obj, Wakeup_get_shift_state);
|
||||
STATIC MP_DEFINE_CONST_FUN_OBJ_0(Wakeup_reset_shift_state_obj, Wakeup_reset_shift_state);
|
||||
|
||||
STATIC const mp_map_elem_t wakeup_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR_wakeup) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_get_gpio_state), MP_ROM_PTR(&Wakeup_get_gpio_state_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_get_shift_state), MP_ROM_PTR(&Wakeup_get_shift_state_obj) }
|
||||
{ MP_ROM_QSTR(MP_QSTR_get_shift_state), MP_ROM_PTR(&Wakeup_get_shift_state_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_reset_shift_state), MP_ROM_PTR(&Wakeup_reset_shift_state_obj) }
|
||||
};
|
||||
STATIC MP_DEFINE_CONST_DICT(mp_module_wakeup_globals, wakeup_globals_table);
|
||||
|
||||
|
|
|
@ -62,11 +62,25 @@ mp_obj_t Wakeup_get_gpio_state() {
|
|||
return mp_obj_new_int(runtime_wakeup_gpio_state);
|
||||
}
|
||||
|
||||
void err_no_sr() {
|
||||
mp_raise_msg(&mp_type_RuntimeError, "Wakeup_get_shift_state: board does not have a shift register.");
|
||||
}
|
||||
|
||||
mp_obj_t Wakeup_reset_shift_state() {
|
||||
#if WAKEUP_HAS_SHIFT_REGISTER==1
|
||||
wakeup.shift_register_state = 0;
|
||||
return mp_const_none;
|
||||
#endif
|
||||
err_no_sr();
|
||||
return mp_const_none;
|
||||
}
|
||||
|
||||
mp_obj_t Wakeup_get_shift_state() {
|
||||
#if WAKEUP_HAS_SHIFT_REGISTER==1
|
||||
return mp_obj_new_int(wakeup.shift_register_state);
|
||||
#endif
|
||||
mp_raise_msg(&mp_type_RuntimeError, "Wakeup_get_shift_state: board does not have a shift register.");
|
||||
err_no_sr();
|
||||
return mp_const_none;
|
||||
}
|
||||
|
||||
}
|
|
@ -2,4 +2,5 @@
|
|||
#include "py/objstr.h"
|
||||
|
||||
extern mp_obj_t Wakeup_get_gpio_state();
|
||||
extern mp_obj_t Wakeup_get_shift_state();
|
||||
extern mp_obj_t Wakeup_get_shift_state();
|
||||
extern mp_obj_t Wakeup_reset_shift_state();
|
Ładowanie…
Reference in New Issue