USB
, , USB .
USB :
( )
()
( )
USB . . (Token Packet). , : , . , , (Data Packet). (Status Packet), , (STALL) .
USB
USB . USB :
(Sync Field)
. 8 32 , USB . , PID .
(PID Field)
USB . PID , 4.
(LSB) | (MSB) | ||||||
PID0 | PID1 | PID2 | PID3 | PID0 | PID1 | PID2 | PID3 |
2. PID.
PID . PID , . PID , .
PID | PID | PID[30] | |
(Token) | Out | + --> | |
In | + CT <-- | ||
SOF | |||
SETUP | + SETUP | ||
DATA0 | PID | ||
DATA1 | PID | ||
ACK | |||
NAK | , | ||
STALL | (HALT) | ||
. | PRE | , |
3. PID.
|
|
PID MSB . , ( 0) .
(Addr Field)
. - 7 , 127 USB . , 0 . 0 ( ) .
(Endpoint Field)
4 16 . '0' . : , ( Interrupt ). 16 .
(Frame Number Field)
11- , . 07FF, SOF .
(CRC)
(CRC) PID . 100% . - CRC, ADDR ENDP IN, SETUP,OUT SOF. 16- , .
(EOP)
"Single Ended Zero " SE0 J , .
USB
USB . - , , , .
(Token Packets)
:
1. In - USB ,
2. Out - USB ,
3. Setup - (Control Transfer)
|
|
:
SYNC | PID | ADDR | ENDP | CRC5 | EOP |
4. .
(Token Packets)
, 1024 .
- DATA0
- DATA1
PID-a: DATA2 MDATA. :
SYNC | PID | DATA | CRC16 | EOP |
5. .
- 8 .
- 1023 .
- 1024 .
- . CRC16 PID, .
(Handshake Packets)
, PID :
- ACK - ,
- NAK - , . Interrupt , . NAK. NAK .
- STALL - , , . , STALL, , . STALL.
:
SYNC | PID | EOP |
6. .
(Start of Frame Packets)
SOF 11- 1ms 500ns 125 s 0.0625 s .
:
SYNC | PID | Frame Number | CRC16 | EOP |
7. .
USB
USB , USB -. USB , . USB .
, USB , . , : / FIFO, NAK STALL, .
/ . 8 . , EP0 Out EP0 In. . USB Setup . , USB (FIFO) (Endpoint Field). , , , RXFIFO. , . - RXFIFO . [2]
|
|
. USB . , , EP1 . USB RXFIFO1. RXFIFO1 . , USB , .. . , IN , EP1. TXFIFO1 , IN . - . USB (EP0). , USB . [2]
- . - . , , - , . . USB :
. , , , , . , . ( ).
. . , . , . , , ( ). , , .. .
. , .
. , . , , ..
. . . , , . , , .
|
|
. . , , ( . .
:
Low Speed. . 1.5 /.
Full Speed. . 12 /.
High Speed. . 2.0. 480 /.
USB . , , . . , . , ( , USB - . USB - : , , ( , ), (), ( ). [3]