kopia lustrzana https://github.com/pimoroni/pimoroni-pico
PicoDisplay: Use pins for buttons.
Swap the button constants to use pins, just in case someone tries to use these with Button() or PicoZero.feature/merged-st7789
rodzic
813b7a401a
commit
1315af4e41
|
@ -11,7 +11,7 @@ namespace pimoroni {
|
|||
static const int HEIGHT = 135;
|
||||
static const int PORTRAIT_WIDTH = 135;
|
||||
static const int PORTRAIT_HEIGHT = 240;
|
||||
static const uint8_t A = 12;
|
||||
static const uint8_t A = 12;
|
||||
static const uint8_t B = 13;
|
||||
static const uint8_t X = 14;
|
||||
static const uint8_t Y = 15;
|
||||
|
|
|
@ -11,7 +11,7 @@ namespace pimoroni {
|
|||
static const int HEIGHT = 240;
|
||||
static const int PORTRAIT_WIDTH = 240;
|
||||
static const int PORTRAIT_HEIGHT = 320;
|
||||
static const uint8_t A = 12;
|
||||
static const uint8_t A = 12;
|
||||
static const uint8_t B = 13;
|
||||
static const uint8_t X = 14;
|
||||
static const uint8_t Y = 15;
|
||||
|
|
|
@ -1,14 +1,5 @@
|
|||
#include "pico_display.h"
|
||||
|
||||
/***** Constants *****/
|
||||
enum buttons
|
||||
{
|
||||
BUTTON_A = 0,
|
||||
BUTTON_B,
|
||||
BUTTON_X,
|
||||
BUTTON_Y,
|
||||
};
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// picodisplay Module
|
||||
|
@ -61,10 +52,13 @@ STATIC const mp_map_elem_t picodisplay_globals_table[] = {
|
|||
{ MP_ROM_QSTR(MP_QSTR_circle), MP_ROM_PTR(&picodisplay_circle_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_character), MP_ROM_PTR(&picodisplay_character_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_text), MP_ROM_PTR(&picodisplay_text_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_A), MP_ROM_INT(BUTTON_A) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_B), MP_ROM_INT(BUTTON_B) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_X), MP_ROM_INT(BUTTON_X) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_Y), MP_ROM_INT(BUTTON_Y) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_A), MP_ROM_INT(12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_B), MP_ROM_INT(13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_X), MP_ROM_INT(14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_Y), MP_ROM_INT(15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_R), MP_ROM_INT(6) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_G), MP_ROM_INT(7) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_B), MP_ROM_INT(8) },
|
||||
};
|
||||
STATIC MP_DEFINE_CONST_DICT(mp_module_picodisplay_globals, picodisplay_globals_table);
|
||||
|
||||
|
|
|
@ -96,36 +96,11 @@ mp_obj_t picodisplay_set_led(mp_obj_t r_obj, mp_obj_t g_obj, mp_obj_t b_obj) {
|
|||
}
|
||||
|
||||
mp_obj_t picodisplay_is_pressed(mp_obj_t button_obj) {
|
||||
bool buttonPressed = false;
|
||||
|
||||
if(display != nullptr) {
|
||||
int buttonID = mp_obj_get_int(button_obj);
|
||||
switch(buttonID) {
|
||||
case 0:
|
||||
buttonPressed = display->is_pressed(PicoDisplay::A);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
buttonPressed = display->is_pressed(PicoDisplay::B);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
buttonPressed = display->is_pressed(PicoDisplay::X);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
buttonPressed = display->is_pressed(PicoDisplay::Y);
|
||||
break;
|
||||
|
||||
default:
|
||||
mp_raise_ValueError("button not valid. Expected 0 to 3");
|
||||
break;
|
||||
}
|
||||
return display->is_pressed(mp_obj_get_int(button_obj)) ? mp_const_true : mp_const_false;
|
||||
}
|
||||
else
|
||||
mp_raise_msg(&mp_type_RuntimeError, NOT_INITIALISED_MSG);
|
||||
|
||||
return buttonPressed ? mp_const_true : mp_const_false;
|
||||
mp_raise_msg(&mp_type_RuntimeError, NOT_INITIALISED_MSG);
|
||||
return mp_const_none;
|
||||
}
|
||||
|
||||
mp_obj_t picodisplay_set_pen(mp_uint_t n_args, const mp_obj_t *args) {
|
||||
|
|
|
@ -1,14 +1,5 @@
|
|||
#include "pico_display_2.h"
|
||||
|
||||
/***** Constants *****/
|
||||
enum buttons
|
||||
{
|
||||
BUTTON_A = 0,
|
||||
BUTTON_B,
|
||||
BUTTON_X,
|
||||
BUTTON_Y,
|
||||
};
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// picodisplay2 Module
|
||||
|
@ -61,10 +52,13 @@ STATIC const mp_map_elem_t picodisplay2_globals_table[] = {
|
|||
{ MP_ROM_QSTR(MP_QSTR_circle), MP_ROM_PTR(&picodisplay2_circle_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_character), MP_ROM_PTR(&picodisplay2_character_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_text), MP_ROM_PTR(&picodisplay2_text_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_A), MP_ROM_INT(BUTTON_A) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_B), MP_ROM_INT(BUTTON_B) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_X), MP_ROM_INT(BUTTON_X) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_Y), MP_ROM_INT(BUTTON_Y) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_A), MP_ROM_INT(12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_B), MP_ROM_INT(13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_X), MP_ROM_INT(14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_Y), MP_ROM_INT(15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_R), MP_ROM_INT(6) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_G), MP_ROM_INT(7) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_B), MP_ROM_INT(8) },
|
||||
};
|
||||
STATIC MP_DEFINE_CONST_DICT(mp_module_picodisplay2_globals, picodisplay2_globals_table);
|
||||
|
||||
|
|
|
@ -96,36 +96,11 @@ mp_obj_t picodisplay2_set_led(mp_obj_t r_obj, mp_obj_t g_obj, mp_obj_t b_obj) {
|
|||
}
|
||||
|
||||
mp_obj_t picodisplay2_is_pressed(mp_obj_t button_obj) {
|
||||
bool buttonPressed = false;
|
||||
|
||||
if(display2 != nullptr) {
|
||||
int buttonID = mp_obj_get_int(button_obj);
|
||||
switch(buttonID) {
|
||||
case 0:
|
||||
buttonPressed = display2->is_pressed(PicoDisplay2::A);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
buttonPressed = display2->is_pressed(PicoDisplay2::B);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
buttonPressed = display2->is_pressed(PicoDisplay2::X);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
buttonPressed = display2->is_pressed(PicoDisplay2::Y);
|
||||
break;
|
||||
|
||||
default:
|
||||
mp_raise_ValueError("button not valid. Expected 0 to 3");
|
||||
break;
|
||||
}
|
||||
return display2->is_pressed(mp_obj_get_int(button_obj)) ? mp_const_true : mp_const_false;
|
||||
}
|
||||
else
|
||||
mp_raise_msg(&mp_type_RuntimeError, NOT_INITIALISED_MSG);
|
||||
|
||||
return buttonPressed ? mp_const_true : mp_const_false;
|
||||
mp_raise_msg(&mp_type_RuntimeError, NOT_INITIALISED_MSG);
|
||||
return mp_const_none;
|
||||
}
|
||||
|
||||
mp_obj_t picodisplay2_set_pen(mp_uint_t n_args, const mp_obj_t *args) {
|
||||
|
|
Ładowanie…
Reference in New Issue