import usb_cdc
import binascii
import hashlib
import array
import board
import rp2pio
import adafruit_pioasm

program = adafruit_pioasm.Program("""
    in pins, 1
""")

sm = rp2pio.StateMachine(program.assembled,
    frequency=125_000_000,
    jmp_pin = board.A3,
    first_in_pin = board.A3,
    in_pin_count = 1,
    auto_push=True,
    push_threshold=32,
    **program.pio_kwargs,
   ) 

usb_cdc.data.write_timeout = None

h = hashlib.new('sha1')
buf = array.array('L', [320])
while True:
    sm.readinto(buf)
    h.update(buf)
    d = h.digest()
    usb_cdc.data.write(d)