j7sx

http_srv_esp8266

Jul 14th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.24 KB | None | 0 0
  1. import machine
  2. import ds18x20
  3. import onewire
  4. import socket
  5.  
  6. def temper():
  7.     pin = machine.Pin(0)
  8.     ds = ds18x20.DS18X20(onewire.OneWire(pin))
  9.     ds_temp = ds.scan()
  10.     for i in ds_temp:
  11.         ds.convert_temp()
  12.         return ("%.2f" % ds.read_temp(i))
  13.  
  14. t=temper()
  15.  
  16. html = """<!DOCTYPE html>
  17. <html>
  18.    <head>
  19.    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">
  20.    <title>ESP8266</title>
  21.    </head>
  22.    <body> <h1>ESP8266 Temperatura</h1>
  23.        температура: %s
  24.        <form>
  25.        <button name="TEMP" value='SHOW' type='submit'> Показать температуру </button>
  26.        </form>
  27.    </body>
  28. </html>
  29. """ % str(t)
  30.  
  31. addr = ('192.168.0.20', 80)
  32.  
  33. s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
  34. s.bind(addr)
  35. s.listen(1)
  36.  
  37. print('listening on', addr)
  38.  
  39. while True:
  40.     conn, addr = s.accept()
  41.     print('client connected from', addr)
  42.     #cl_file = conn.makefile('rwb', 0)
  43.     request=conn.recv(1024)
  44.     #print("Content %s" % str(request))
  45.     print(request)
  46.     #show_temper = request.find("/?TEMP=SHOW")
  47.     show_temper = ['<center> temper: %s</center>' % temper()]
  48.     response = html.join(show_temper)
  49.     conn.send(response)
  50.     conn.close()
Add Comment
Please, Sign In to add comment