litescope/example_designs/test/test_io.py

42 lines
807 B
Python

import time
from litex.soc.tools.remote import RemoteClient
from litescope.software.driver.io import LiteScopeIODriver
def led_anim0(inout):
for i in range(10):
io.write(0xa5)
time.sleep(0.1)
io.write(0x5a)
time.sleep(0.1)
def led_anim1(inout):
for j in range(4):
# Led <<
led_data = 1
for i in range(8):
io.write(led_data)
time.sleep(i*i*0.0020)
led_data = (led_data << 1)
# Led >>
ledData = 128
for i in range(8):
io.write(led_data)
time.sleep(i*i*0.0020)
led_data = (led_data >> 1)
wb = RemoteClient()
wb.open()
# # #
io = LiteScopeIODriver(wb.regs, "io")
led_anim0(io)
led_anim1(io)
print("{:02x}".format(io.read()))
# # #
wb.close()