kopia lustrzana https://github.com/pimoroni/pimoroni-pico
PicoGraphics: Support for Explorer.
rodzic
3e16e1228f
commit
078f3e6a39
|
@ -58,9 +58,10 @@ namespace pimoroni {
|
|||
cs(pins.cs), dc(pins.dc), wr_sck(pins.wr_sck), rd_sck(pins.rd_sck), d0(pins.d0), bl(pins.bl) {
|
||||
|
||||
parallel_pio = pio1;
|
||||
pio_set_gpio_base(parallel_pio, d0 + 8 >= 32 ? 16 : 0);
|
||||
parallel_sm = pio_claim_unused_sm(parallel_pio, true);
|
||||
parallel_offset = pio_add_program(parallel_pio, &st7789_parallel_program);
|
||||
|
||||
|
||||
//gpio_init(wr_sck);
|
||||
//gpio_set_dir(wr_sck, GPIO_OUT);
|
||||
//gpio_set_function(wr_sck, GPIO_FUNC_SIO);
|
||||
|
|
|
@ -157,6 +157,7 @@ static const mp_map_elem_t picographics_globals_table[] = {
|
|||
{ MP_ROM_QSTR(MP_QSTR_DISPLAY_UNICORN_PACK), MP_ROM_INT(DISPLAY_UNICORN_PACK) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_DISPLAY_SCROLL_PACK), MP_ROM_INT(DISPLAY_SCROLL_PACK) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_DISPLAY_PICO_W_EXPLORER), MP_ROM_INT(DISPLAY_PICO_W_EXPLORER) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_DISPLAY_EXPLORER), MP_ROM_INT(DISPLAY_EXPLORER) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_PEN_1BIT), MP_ROM_INT(PEN_1BIT) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_PEN_P4), MP_ROM_INT(PEN_P4) },
|
||||
|
|
|
@ -44,6 +44,13 @@ typedef struct _ModPicoGraphics_obj_t {
|
|||
|
||||
bool get_display_settings(PicoGraphicsDisplay display, int &width, int &height, int &rotate, int &pen_type, PicoGraphicsBusType &bus_type) {
|
||||
switch(display) {
|
||||
case DISPLAY_EXPLORER:
|
||||
width = 320;
|
||||
height = 240;
|
||||
bus_type = BUS_PARALLEL;
|
||||
if(rotate == -1) rotate = (int)Rotation::ROTATE_0;
|
||||
if(pen_type == -1) pen_type = PEN_RGB565;
|
||||
break;
|
||||
case DISPLAY_PICO_DISPLAY:
|
||||
width = 240;
|
||||
height = 135;
|
||||
|
@ -335,6 +342,10 @@ mp_obj_t ModPicoGraphics_make_new(const mp_obj_type_t *type, size_t n_args, size
|
|||
} else if (display == DISPLAY_PICO_W_EXPLORER) {
|
||||
spi_bus = {PIMORONI_SPI_DEFAULT_INSTANCE, 17, SPI_DEFAULT_SCK, SPI_DEFAULT_MOSI, PIN_UNUSED, SPI_DEFAULT_MISO, 9};
|
||||
}
|
||||
} else if (bus_type == BUS_PARALLEL) {
|
||||
if (display == DISPLAY_EXPLORER) {
|
||||
parallel_bus = {27, 28, 30, 31, 32, 26};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -349,7 +360,8 @@ mp_obj_t ModPicoGraphics_make_new(const mp_obj_type_t *type, size_t n_args, size
|
|||
// TODO grab BUSY and RESET from ARG_extra_pins
|
||||
self->display = m_new_class(Inky73, width, height, (Rotation)rotate, spi_bus);
|
||||
|
||||
} else if (display == DISPLAY_TUFTY_2040) {
|
||||
} else if (display == DISPLAY_TUFTY_2040
|
||||
|| display == DISPLAY_EXPLORER) {
|
||||
self->display = m_new_class(ST7789, width, height, (Rotation)rotate, parallel_bus);
|
||||
|
||||
} else if (display == DISPLAY_LCD_160X80) {
|
||||
|
|
|
@ -30,7 +30,8 @@ enum PicoGraphicsDisplay {
|
|||
DISPLAY_STELLAR_UNICORN,
|
||||
DISPLAY_UNICORN_PACK,
|
||||
DISPLAY_SCROLL_PACK,
|
||||
DISPLAY_PICO_W_EXPLORER
|
||||
DISPLAY_PICO_W_EXPLORER,
|
||||
DISPLAY_EXPLORER
|
||||
};
|
||||
|
||||
enum PicoGraphicsPenType {
|
||||
|
|
Ładowanie…
Reference in New Issue