Philips Integrated Circuits PDIUSBH12 Datasheet page 14

Usb 2-port hub
Table of Contents

Advertisement

Philips Semiconductors
USB 2-port hub
Table 3. Error codes
ERROR
CODE
0000
No Error
PID encoding Error; bits 7–4 are not the inversion of
0001
bits 3–0
PID unknown; encoding is valid, but PID does not
0010
exist
Unexpected packet; packet is not of the type expected
0011
(= token, data or acknowledge), or SETUP token to a
non-control endpoint
0100
Token CRC Error
0101
Data CRC Error
0110
Time Out Error
0111
Babble Error
1000
Unexpected End-of-packet
1001
Sent or received NAK
Sent Stall, a token was received, but the endpoint was
1010
stalled
Overflow Error, the received packet was longer than
1011
the available buffer space
1101
Bitstuff Error
Wrong DATA PID; the received DATA PID was not the
1111
expected one
Read Endpoint Status
Command
: 80–8Dh
Data
: Read 1 byte
7
6
5
4
3
2
1
X X
0
0
0
0
X
Setup Packet
STALL
Data 0/1 Packet
Buffer Full
1999 Jul 22
RESULT
0
X
POWER ON VALUE
RESERVED
SETUP PACKET
STALL
DATA 0/1 PACKET
BUFFER FULL
RESERVED
SV00833
A '1' indicates the last received
packet had a SETUP token.
A '1' indicates the endpoint is
stalled.
A '1' indicates if the last received
or sent packet had a DATA1 PID.
A '1' indicates that the buffer is
full.
Read Buffer
Command
: F0h
Data
: Read multiple bytes (max 10)
The Read Buffer command is followed by a number of data reads,
which return the contents of the selected endpoint data buffer. After
each read, the internal buffer pointer is incremented by 1.
The buffer pointer is not reset to the buffer start by the Read Buffer
command. This means that reading or writing a buffer can be
interrupted by any other command (except for Select Endpoint), or
can be done by more than one I
to get the number of data bytes, then read the rest in other
transactions).
The data in the buffer are organized as follows:
byte 0:
Reserved: can have any value
byte 1:
Number/length of data bytes
byte 2:
Data byte 1
byte 3:
Data byte 2
Write Buffer
Command
: F0h
Data
: Write multiple bytes (max 10)
The Write Buffer command is followed by a number of data writes,
which load the endpoints buffer. The data must be organized in the
same way as described in the Read Buffer command. The first byte
(reserved) should always be 0. As in the Read Buffer command, the
data can be split up into different I
WARNING:
There is no protection against writing or reading over a buffer's
boundary or against writing into an OUT buffer or reading from an IN
buffer. Any of these actions could cause an incorrect operation. Data
in an OUT buffer are only meaningful after a successful transaction.
Clear Buffer
Command
: F2h
Data
: None
When a packet is received completely, an internal endpoint buffer
full flag is set. All subsequent packets will be refused by returning a
NAK. When the microcontroller has read the data, it should free the
buffer by the Clear Buffer command. When the buffer is cleared new
packets will be accepted.
Validate Buffer
Command
: FAh
Data
: None
When the microprocessor has written data into an IN buffer, it should
set the buffer full flag by the Validate Buffer command. This indicates
that the data in the buffer are valid and can be sent to the host when
the next IN token is received.
14
Product specification
PDIUSBH12
2
C transaction (read the first 2 bytes
2
C data transactions.

Advertisement

Table of Contents
loading

Table of Contents