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)