from machine import Pin, I2C
from ssd1306 import SSD1306_I2C
import time
i2c = I2C(1, scl=Pin(27), sda=Pin(26), freq=200000)
oled = SSD1306_I2C(128, 64, i2c)
# 공의 초기 위치
x = 64
y = 32
# 공의 이동 속도 및 방향 (x, y 각각)
vx = 2
vy = 2
# 공의 크기
size = 6
while True:
oled.fill(0)
# 공 그리기 (네모난 공)
oled.fill_rect(x, y, size, size, 1)
# 좌표 업데이트
x += vx
y += vy
# 벽 충돌 감지 (가로)
if x <= 0 or x >= (128 - size):
vx = -vx # 방향 반대로
# 벽 충돌 감지 (세로)
if y <= 0 or y >= (64 - size):
vy = -vy # 방향 반대로
oled.show()
# time.sleep(0.01) # 너무 빠르면 주석 해제해서 속도 조절