Hopefully final changes

This commit is contained in:
2017-08-09 01:27:36 +03:00
parent aaba09e9e3
commit fe1b99dc0f
11 changed files with 9248 additions and 5331 deletions

68
main.py
View File

@@ -4,19 +4,8 @@ from machine import Pin, Timer
clock = Pin(3, mode=Pin.OUT)
latch = Pin(0, mode=Pin.OUT)
data = Pin(2, mode=Pin.OUT)
lut = [
0b1011, # 0
0b1001, # 1
0b1100, # 2
0b1000, # 3
0b0000, # 4
0b0100, # 5
0b0001, # 6
0b0011, # 7
0b0010, # 8
0b1010, # 9
]
blink = 0
lookup = 11, 9, 12, 8, 0, 4, 1, 3, 2, 10
def bitbang_bit(value):
if value & 1:
@@ -26,15 +15,13 @@ def bitbang_bit(value):
clock.on()
clock.off()
def bitbang_digit(digit, width=4):
def bitbang_digit(digit):
bitbang_bit(blink)
for i in range(0,width):
bitbang_bit(lut[digit] << i << 1 >> width)
def bitbang_latch():
latch.on()
latch.off()
state = 0
bitbang_bit(lookup[digit] << i >> 3)
bitbang_bit(blink)
bitbang_bit(blink)
bitbang_bit(blink)
timer = Timer(-1)
@@ -43,51 +30,22 @@ def schedule(delay=0):
timer.init(period=1000, mode=Timer.ONE_SHOT, callback=dump)
else:
dump()
def dump_time(hour, minute, second):
bitbang_bit(state)
bitbang_digit(hour // 10)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
bitbang_digit(hour % 10)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
bitbang_digit(minute // 10)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
bitbang_digit(minute % 10)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
bitbang_digit(second // 10)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
bitbang_digit(second % 10)
bitbang_bit(state)
bitbang_bit(state)
bitbang_bit(state)
def dump(t=None):
global state
global blink
year, month, day, hour, minute, second, _, millis = localtime()
dump_time((hour + 3) % 24, minute, second)
bitbang_latch()
state = 1-state
latch.on()
latch.off()
blink = 1-blink
schedule(1000-millis)
schedule()