Initiates a transfer via the imp’s USB
Device
imp005 and impC001 only
Name | Type | Description |
---|---|---|
deviceAddress | Integer |
The address of the device
|
endpointAddress | Integer |
The address of the endpoint
|
endpointType | Integer |
The type of the endpoint
|
data | Blob |
The data to be transferred
|
Nothing
This method initiates a USB transfer. The USB event callback specified in usb.configure() will be called when the transfer completes.
The endpoint must be opened before any transfers can be made (see usb.openendpoint()). The endpoint value is an 8-bit integer formed from the following bit fields:
Bits | Description |
---|---|
D0-3 | The endpoint number |
D4-6 | Reserved |
D7 | The direction of transfer: 0 is out, 1 is in |
The value of the endpointType parameter is provided in the endpoint descriptor generated when the device connects, an event which triggers a call to the callback function registered with usb.configure(). It will one of the following values:
Value | Type |
---|---|
0x00 |
Control endpoint |
0x01 |
Isochronous endpoint not supported |
0x02 |
Bulk endpoint |
0x03 |
Interrupt In endpoint |
At the moment, interrupt out transfers are not supported.
For an out-bound transfer the blob passed into the data parameter should contain the data to be written. For an incoming transfer, the blob should be pre-sized to the number of bytes that will be read. The actual bytes read are written into the eventdetails table in the USB event callback (usb.configure()).