|
import network import socket import time import machine from machine import Pin
intled = machine.Pin("LED", machine.Pin.OUT) ssid = 'U+Net229B' #자신의 인터넷 공유기에 맞게 수정한다. password = '612C910976' #자신의 인터넷 공유기에 맞게 수정한다.
wlan = network.WLAN(network.STA_IF) wlan.active(True) wlan.connect(ssid, password)
html = """ Pico W Pico Wifi 내장 LED 원격 조정 SW1: 내장 LED 켜기 SW2: 내장 LED 끄기
"""
# Wait for connect or fail max_wait = 10 while max_wait > 0: if wlan.status() < 0 or wlan.status() >= 3: break max_wait -= 1 print('waiting for connection...') time.sleep(1)
# Handle connection error if wlan.status() != 3: raise RuntimeError('network connection failed') else: print('connected') status = wlan.ifconfig() print( 'ip = ' + status[0] )
# Open socket addr = socket.getaddrinfo('0.0.0.0', 80)[0][-1] s = socket.socket() s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) s.bind(addr) s.listen(1)
print('listening on', addr)
stateis = ""
# Listen for connections while True: try: cl, addr = s.accept() print('client connected from', addr)
request = cl.recv(1024) print(request)
request = str(request) led_on = request.find('/light/on') led_off = request.find('/light/off') print( 'led on = ' + str(led_on)) print( 'led off = ' + str(led_off))
if led_on == 6: print("led on") intled.value(1) stateis = "LED 켜짐"
if led_off == 6: print("led off") intled.value(0) stateis = "LED 꺼짐" response = html + stateis cl.send('HTTP/1.0 200 OK\r\nContent-type: text/html\r\n\r\n') cl.send(response) cl.close()
except OSError as e: cl.close() print('connection closed')
|