Загрузка данных


import Pico_LCD_1_3
import time

lcd = Pico_LCD_1_3.LCD_1inch3()

# Цвета
BLACK = 0x0000
GREEN = 0x07E0
RED = 0xF800

def draw_eye_pair(left_r_x, left_r_y, right_r_x, right_r_y, color):
    # Отрисовка двух овалов
    lcd.ellipse(80, 120, left_r_x, left_r_y, color, True)
    lcd.ellipse(160, 120, right_r_x, right_r_y, color, True)

def show_emotion(emotion):
    if emotion == "heart":
        # 1. Глаза сужаются из овала в линию (дугу)
        for i in range(25, 0, -5):
            lcd.fill(BLACK)
            draw_eye_pair(15, i, 15, i, GREEN)
            lcd.show()
            time.sleep(0.1) # 5 FPS
            
        # 2. Появление сердечка (увеличение)
        for size in range(5, 20, 5):
            lcd.fill(BLACK)
            # Рисуем стилизованное сердечко (просто круг или примитив)
            lcd.ellipse(80, 120, size, size, RED, True)
            lcd.ellipse(160, 120, size, size, RED, True)
            lcd.show()
            time.sleep(0.1)

    elif emotion == "sad":
        # Анимация плача (глаза опускаются и появляются "слезы")
        for i in range(5):
            lcd.fill(BLACK)
            draw_eye_pair(15, 25, 15, 25, GREEN)
            # Слезинки
            lcd.fill_rect(75, 145, 5, 5, 0x001F) 
            lcd.fill_rect(155, 145, 5, 5, 0x001F)
            lcd.show()
            time.sleep(0.2)

# Основной цикл (ожидание команд)
print("Робот готов! Введите в Shell: show_emotion('heart') или show_emotion('sad')")
while True:
    # Здесь можно добавить логику случайного моргания
    time.sleep(1)