28.5.5 Endpoint Control - Isochronous Type
This register description is only valid when the Endpoint Type (TYPE) bit field in
this register is written to ‘ISOCHRONOUS’. For other endpoint
types, see Endpoint Control - Default Type for the correct description.
| Name: | CTRL |
| Offset: | 0x01 + n*0x08 [n=0..1] |
| Reset: | 0x00 |
| Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
| TYPE[1:0] | MULTIPKT | TCDSBL | BUFSIZE[2:0] | ||||||
| Access | R/W | R/W | R/W | R/W | R/W | R/W | R/W | ||
| Reset | x | x | x | x | x | x | x | ||
Bits 7:6 – TYPE[1:0] Endpoint Type
These bits enable and select the endpoint type. If the endpoint is disabled, the remaining seven endpoint configuration bytes are never read or written by the USB peripheral, and their RAM locations are free to use for other application data.
| Value | Name | Description |
|---|---|---|
| 0x0 | DISABLE | Endpoint Disabled |
| 0x1 | CONTROL | Control |
| 0x2 | BULKINT | Bulk or Interrupt |
| 0x3 | ISOCHRONOUS | Isochronous |
Bit 5 – MULTIPKT Multi-packet Transfer Enable
Writing this bit to ‘1’ enables multi-packet transfers.
The multi-packet transfer enables a data payload exceeding the maximum
packet size of an endpoint to be transferred as multiple packets
without interrupts or firmware intervention. When MULTIPKT is
‘1’, MCNT defines the maximum size of a single
OUT packet, thereby preventing the data reception buffer overrun.
Bit 3 – TCDSBL TRNCOMPL Interrupt Disable
When this bit is written to ‘1’, the Transaction
Complete (TRNCOMPL) flag in the Interrupt Flags B (INTFLAGSB) register
is not set together with the TRNCOMPL flag of the endpoint in the
Endpoint Status (EPn.STATUS) register. The FIFO will not store the
endpoint configuration table address for this endpoint until
transaction completes, if TCDSBL is ‘1’.
Bits 2:0 – BUFSIZE[2:0] Data Size (Isochronous)
This bit field configures the maximum data payload size for the endpoint. Incoming data bytes exceeding the maximum data payload size are discarded. For control endpoints, this field only affects IN and OUT transactions. For a SETUP transaction, the maximum data payload is always of eight bytes.
| Value | Name | Description |
|---|---|---|
| 0x0 | ISO_BUF8 | 8 bytes buffer size |
| 0x1 | ISO_BUF16 | 16 bytes buffer size |
| 0x2 | ISO_BUF32 | 32 bytes buffer size |
| 0x3 | ISO_BUF64 | 64 bytes buffer size |
| 0x4 | ISO_BUF128 | 128 bytes buffer size |
| 0x5 | ISO_BUF256 | 256 bytes buffer size |
| 0x6 | ISO_BUF512 | 512 bytes buffer size |
| 0x7 | ISO_BUF1023 | 1023 bytes buffer size |
