from machine import Pin, I2C
import ssd1306
import utime
i2c = I2C(0, scl=Pin(22), sda=Pin(21))
oled_width = 128
oled_height = 64
oled = ssd1306.SSD1306_I2C(oled_width, oled_height, i2c)
oled.text('HELLO!', 42, 30)
oled.show()
oled.fill(0)
utime.sleep(0.5)
def draw_eye(x, y):
size = 38
for i in range(4, size - 4):
for j in range(4, size - 4):
if i + j < size + 6:
oled.pixel(x + i, y + j, 1)
else:
oled.pixel(x + i, y + j, 1)
corners = [
(4,4),(5,4),(4,5),
(size-5,4),(size-6,4),(size-5,5),
(4,size-5),(4,size-6),(5,size-5),
(size-5,size-5),(size-6,size-5),(size-5,size-6)
]
for dx, dy in corners:
oled.pixel(x + dx, y + dy, 0)
def draw_face():
oled.fill(0)
draw_eye(26, 13)
draw_eye(64, 13)
oled.show()
utime.sleep(0.5)
draw_face()
def draw_closed_eyes():
oled.fill(0)
# Mắt trái (vẽ đường ngang 10 pixel tại vị trí 32)
for x in range(26, 36):
oled.pixel(x, 32, 1)
# Mắt phải
for x in range(64, 74):
oled.pixel(x, 32, 1)
oled.show()
utime.sleep(0.5)