Пример #1
0
def draw_circle(x0, y0, radius, col=st7789.color565(255, 255, 255)):
    for y in range(-radius, radius + 1):
        yy = (y * y) // (radius * 10)
        for x in range(-radius, 1):
            if ((x * x) + (y * y) <= (radius * radius)):
                disp.fill_rect(x0 + x - yy // 3, y0 + y, yy + 2, 1, col)
                disp.fill_rect(x0 - x - yy, y0 + y, yy + 2, 1, col)
                break
Пример #2
0
def bitmap_thread():
    global col_base
    vw = 1  # 2nd threadで書く縦幅
    with open("/fonts/" + Watch_face, "rb") as bm:
        for l in range(1, disp_height - 1, vw):
            col_base = bytes()
            for w in range(disp_width * vw):
                if w % disp_width == 0:
                    bm.seek(54 + (disp_height - l) * disp_width * 3)
                bgr = bm.read(3)
                rgb = st7789.color565((bgr[2], bgr[1], bgr[0]))
                col_base += rgb.to_bytes(2, 'big')
            disp.set_window(0, l - 1, disp_width - 1, l - 1 + vw - 1)
            disp.write(None, col_base)
Пример #3
0
        from lib.font_read16 import text8
elif osname.find('Tufty 2040') > 0:
    from picographics import PicoGraphics, DISPLAY_TUFTY_2040, PEN_RGB332
    from pimoroni import Button
    display = PicoGraphics(display=DISPLAY_TUFTY_2040)
    disp = passPicoG(display)
    import jpegdec
    from lib.font_read16 import writeTXT, text8
else:
    uos.exit()
wkpos = (158, 111)  # clock3:(173,110)

from lib import read_8x16 as font1
if osname.find('Pico') > 0:
    from lib import st7789py2 as st7789
    WHITE = st7789.color565((255, 255, 255))
    BLACK = st7789.color565((0, 0, 0))
    ORANGE = st7789.color565((200, 138, 30))
    YELLOW = st7789.color565((255, 216, 0))
    LITEYL = st7789.color565((200, 200, 0))
    BLUE = st7789.color565((116, 215, 238))
    CYAN = st7789.color565((33, 177, 255))
    RED = st7789.color565((209, 34, 41))
    j = False
    print(osname)
    spi1 = SPI(RotPiGO ^ 1,
               baudrate=62500000,
               polarity=1,
               sck=spi1_sck,
               mosi=spi1_mosi,
               miso=None)
Пример #4
0
def paint_circle(x0, y0, radius, col=st7789.color565(255, 255, 255)):
    for y in range(-radius, radius + 1):
        for x in range(-radius, 1):
            if ((x * x) + (y * y) <= (radius * radius)):
                disp.fill_rect(x0 + x, y0 + y, abs(x * 2), 1, col)
                break
Пример #5
0
#SPI(1) default pins
spi1_sck = 10
spi1_mosi = 11
spi1_miso = 8  #not use
st7789_cs = 9
st7789_res = 12
st7789_dc = 13
dump = Pin(15, Pin.IN, Pin.PULL_UP)
disp_width = const(240)
disp_height = const(240)
CENTER_X = const(disp_width // 2)
CENTER_Y = disp_height // 2
dbl_pi = math.pi * 2
doller = b'$'
col_base = [st7789.color565(0, 0, 255)] * 101
Watch_face = "Screenshot_clock4.bmp"
wkfont = font2
wkpos = (74, 50)
Watch_face = "Screenshot_clock1.bmp"
wkfont = font1
wkpos = (158, 110)  # clock3:(173,110)

print(uos.uname())
spi1 = SPI(1, baudrate=62500000, polarity=1, miso=None)
print(spi1)
disp = st7789.ST7789(spi1,
                     disp_width,
                     disp_width,
                     reset=Pin(st7789_res, Pin.OUT),
                     dc=Pin(st7789_dc, Pin.OUT),