1
0
forked from M-Labs/nac3
nac3/nac3artiq/demo/demo.py

45 lines
827 B
Python
Raw Normal View History

from min_artiq import *
from numpy import int32, int64
@extern
def output_int(x: int32):
...
class InexistingException(Exception):
pass
2021-09-24 11:39:26 +08:00
@nac3
class Demo:
core: KernelInvariant[Core]
led0: KernelInvariant[TTLOut]
led1: KernelInvariant[TTLOut]
2021-09-25 14:17:11 +08:00
def __init__(self):
self.core = Core()
2021-11-05 18:07:18 +08:00
self.led0 = TTLOut(self.core, 18)
self.led1 = TTLOut(self.core, 19)
2020-12-18 23:44:45 +08:00
@kernel
def test(self):
a = (1, True)
a[0]()
@kernel
def test2(self):
a = (1, True)
output_int(int32(a))
2020-12-18 23:44:45 +08:00
@kernel
def run(self):
self.core.reset()
2021-09-25 14:17:11 +08:00
while True:
2021-11-05 18:07:18 +08:00
with parallel:
self.led0.pulse(100.*ms)
self.led1.pulse(100.*ms)
self.core.delay(100.*ms)
2020-12-18 23:44:45 +08:00
if __name__ == "__main__":
Demo().run()