Fixed issue with clear of picoscroll not working under mpy, and added demo

pull/10/head
ZodiusInfuser 2021-01-21 16:56:04 +00:00
rodzic 5afc67f53d
commit 9a8bcc9f8a
3 zmienionych plików z 41 dodań i 1 usunięć

Wyświetl plik

@ -55,6 +55,10 @@ namespace pimoroni {
gpio_set_function(pin::B, GPIO_FUNC_SIO); gpio_set_dir(pin::B, GPIO_IN); gpio_pull_up(pin::B);
gpio_set_function(pin::X, GPIO_FUNC_SIO); gpio_set_dir(pin::X, GPIO_IN); gpio_pull_up(pin::X);
gpio_set_function(pin::Y, GPIO_FUNC_SIO); gpio_set_dir(pin::Y, GPIO_IN); gpio_pull_up(pin::Y);
// reset the screen
clear();
update();
}
void PicoScroll::set_pixel(uint8_t x, uint8_t y, uint8_t v) {

Wyświetl plik

@ -0,0 +1,36 @@
import time
import picoscroll as scroll
scroll.init()
i = 0
loop = 18
br_mult = 1
br_pressed = 32
tail = 12
width = scroll.get_width()
height = scroll.get_height()
while True:
scroll.clear();
for y in range(0, height):
for x in range(0, width):
if x < 3 and y < 3 and scroll.is_pressed(scroll.BUTTON_A):
scroll.set_pixel(x, y, br_pressed)
elif x < 3 and y > 3 and scroll.is_pressed(scroll.BUTTON_B):
scroll.set_pixel(x, y, br_pressed)
elif x > width - 4 and y < 3 and scroll.is_pressed(scroll.BUTTON_X):
scroll.set_pixel(x, y, br_pressed)
elif x > width - 4 and y > 3 and scroll.is_pressed(scroll.BUTTON_Y):
scroll.set_pixel(x, y, br_pressed)
else:
m = (x + (y * width)) % loop
for b in range(0, loop):
if m == (i + (loop - b)) % loop and b < tail:
scroll.set_pixel(x, y, br_mult * (tail - b))
scroll.update()
i += 1
if i >= loop:
i = 0
time.sleep(0.02)

Wyświetl plik

@ -20,7 +20,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_0(picoscroll_get_width_obj, picoscroll_get_width)
STATIC MP_DEFINE_CONST_FUN_OBJ_0(picoscroll_get_height_obj, picoscroll_get_height);
STATIC MP_DEFINE_CONST_FUN_OBJ_0(picoscroll_update_obj, picoscroll_update);
STATIC MP_DEFINE_CONST_FUN_OBJ_3(picoscroll_set_pixel_obj, picoscroll_set_pixel);
STATIC MP_DEFINE_CONST_FUN_OBJ_0(picoscroll_clear_obj, picoscroll_init);
STATIC MP_DEFINE_CONST_FUN_OBJ_0(picoscroll_clear_obj, picoscroll_clear);
STATIC MP_DEFINE_CONST_FUN_OBJ_1(picoscroll_is_pressed_obj, picoscroll_is_pressed);
/***** Globals Table *****/