Created
May 12, 2014 21:52
-
-
Save rnestler/560afdf3f5d1e9c117f1 to your computer and use it in GitHub Desktop.
micro python script
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import pyb | |
from pyb import Pin | |
def initpin(val): | |
p = Pin(val) | |
p.init(Pin.OUT_OD) | |
return p | |
def togglepin(pin): | |
if pin.value(): | |
pin.low() | |
else: | |
pin.high() | |
# address pins a0..a3 | |
addr = [initpin(i) for i in ['Y5', 'Y6', 'Y7', 'Y8']] | |
dred = initpin('Y3') | |
dgreen = initpin('Y4') | |
enable = initpin('Y12') | |
latch = initpin('Y11') | |
clock = initpin('X9') | |
def setAddr(a): | |
assert 0 <= a < 16 | |
for i in range(4): | |
print(i) | |
if a & (1<<i): | |
addr[i].high() | |
else: | |
addr[i].low() | |
def boom(): | |
print(bool(0&(1<<32))) | |
def sendRG(red, green): | |
for i in range(32): | |
print(red, green) | |
if red & (1<<i): | |
print("set red high", 1<<i) | |
#dred.high() | |
else: | |
pass | |
#dred.low() | |
if green & (1<<i): | |
print("set green high", 1<<i) | |
#dgreen.high() | |
else: | |
pass | |
#dgreen.low() | |
#pyb.udelay(1) | |
#clock.high() | |
#pyb.udelay(1) | |
#clock.low() | |
def sendLine(addr, red, green): | |
#setAddr(addr) | |
dred.low() | |
dgreen.low() | |
enable.low() | |
latch.low() | |
clock.low() | |
sendRG(red, green) | |
enable.high() | |
latch.high() | |
pyb.udelay(3) | |
latch.low() | |
enable.low() | |
for a in addr: | |
a.low() | |
pyb.LED(1).on() | |
sendLine(0, 255,255) | |
pyb.LED(2).on() | |
pyb.delay(1000) | |
sendLine(1, 0,255) | |
pyb.delay(1000) | |
pyb.LED(3).on() | |
sendLine(2, 255,0) | |
pyb.LED(4).on() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment