import network
import time
from machine import Pin, I2C
import ssd1306
# 1. ตั้งค่า Pin สำหรับหลอด LED (จากรูปคือขา GP15)
led = Pin(18, Pin.OUT)
led.value(0) # สั่งให้ LED ดับไว้ก่อนเริ่มเชื่อมต่อ
# 2. ตั้งค่า I2C สำหรับจอ OLED (SDA=GP4, SCL=GP5)
i2c = I2C(0, sda=Pin(16), scl=Pin(17))
# กำหนดขนาดจอ OLED เป็น 128x64 พิกเซล
oled = ssd1306.SSD1306_I2C(128, 64, i2c)
# ข้อมูล Wi-Fi ของ Wokwi
ssid = "Wokwi-GUEST"
password = ""
def connect_wifi():
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect(ssid, password)
# แสดงข้อความระหว่างรอเชื่อมต่อ
print("กำลังเชื่อมต่อ Wi-Fi...")
oled.fill(0) # ล้างหน้าจอ
oled.text("Connecting...", 0, 0)
oled.show()
# รอจนกว่าจะเชื่อมต่อสำเร็จ
while not wlan.isconnected():
led.value(0) # มั่นใจว่า LED ดับหากยังไม่เชื่อมต่อหรือหลุด
time.sleep(1)
# หากเชื่อมต่อสำเร็จ
ip_address = wlan.ifconfig()[0]
print("เชื่อมต่อแล้ว")
print("IP Address:", ip_address)
# สั่งให้หลอด LED ติดสว่าง
led.value(1)
# แสดงผลบนจอ OLED ว่าสำเร็จและแสดง IP
oled.fill(0)
oled.text("WiFi Connected!", 0, 0)
oled.text("IP:", 0, 20)
oled.text(ip_address, 0, 32)
oled.show()
# เรียกใช้งานฟังก์ชัน
connect_wifi()