#!/usr/bin/python
from MCP23S17 import *
from lightChip import *
from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer
class HTTPServ(BaseHTTPRequestHandler):
def do_GET(self):
try:
self.send_response(200)
self.send_header('Content-Type','text/html')
self.end_headers()
parts = self.path.split('/',2)
chanel=int(parts[1])
prec=int(parts[2])
self.wfile.write('');
self.wfile.write('
');
self.wfile.write('')
self.wfile.write('');
self.wfile.write("\n");
self.wfile.write("
\n");
for dim in range(0,11):
self.wfile.write("\n");
for col in range(0,8):
self.wfile.write('{}/{} | '.format(col,dim,(1+col),dim))
self.wfile.write("
\n");
self.wfile.write('
');
self.wfile.write('')
self.wfile.write('');
chip.state[chanel]=prec
return
except IOError:
self.send_error(404,'Not found')
if __name__ == "__main__":
GPIO.cleanup()
GPIO.setmode(GPIO.BOARD);
GPIO.setwarnings(True);
CS=13
CLK=11
MOSI=7
MISO=5
CS=16
CLK=12
MOSI=10
MISO=8
print "configuring line pins."
GPIO.setup(CLK, GPIO.OUT)
GPIO.setup(MOSI, GPIO.OUT)
GPIO.setup(MISO, GPIO.IN)
GPIO.setup(CS, GPIO.OUT)
print "initializing line level."
GPIO.output(CS, GPIO.HIGH);
GPIO.output(CLK, GPIO.LOW);
chip = lightChip(0,CS, CLK, MISO, MOSI)
try:
server = HTTPServer(('',80), HTTPServ)
print 'started server'
server.serve_forever()
except KeyboardInterrupt:
server.socket.close()
GPIO.cleanup()