示例#1
0
import cocotb
from cocotb.triggers import Timer

from cocotb_usb.harness import get_harness
from cocotb_usb.device import UsbDevice
from cocotb_usb.descriptors.cdc import (setLineCoding, setControlLineState,
                                        getLineCoding, LineCodingStructure)

from os import environ

descriptorFile = environ['TARGET_CONFIG']

DEVICE_ADDRESS = 20

model = UsbDevice(descriptorFile)


@cocotb.test()
def test_tinyfpgabl_cdc_transfer(dut):
    harness = get_harness(dut)
    harness.max_packet_size = model.deviceDescriptor.bMaxPacketSize0
    yield harness.reset()
    yield harness.wait(1e3, units="us")

    dut._log.info("[Enumerating device]")

    yield harness.port_reset(1e3)
    yield harness.connect()
    yield harness.wait(1e3, units="us")
    # After waiting (bus inactivity) let's start with SOF
    yield harness.host_send_sof(0x01)
示例#2
0
from os import environ

import cocotb

from cocotb_usb.harness import get_harness
from cocotb_usb.device import UsbDevice

DESCRIPTOR_FILE = environ['TARGET_CONFIG']

DEVICE_ADDRESS = 5
model = UsbDevice(DESCRIPTOR_FILE)


@cocotb.test()
def test_enumeration_w10(dut):
    harness = get_harness(dut)
    harness.max_packet_size = model.deviceDescriptor.bMaxPacketSize0
    yield harness.reset()
    yield harness.connect()
    yield harness.wait(1e3, units="us")

    yield harness.port_reset(10e3)
    yield harness.connect()
    yield harness.wait(1e3, units="us")
    # After waiting (bus inactivity) let's start with SOF
    yield harness.host_send_sof(0x01)
    yield harness.get_device_descriptor(length=0x40,
                                        response=model.deviceDescriptor.get())
    yield harness.port_reset(1e3)
    yield harness.connect()
    yield harness.wait(1e3, units="us")