Hardware Reference
In-Depth Information
BDnCNT
BC7
BC6
BC5
BC4
BC3
BC2
BC1
BC0
UOWN
Wenn UOWN = 1 ist, wird das Registerpaar BDnStat und BDnCNT von der SIE
verwaltet. Sobald der Anwender also UOWN auf 1 setzt, hat er keine Kontrolle
mehr über die Bits in den Registern BDnSTAT und BDnCNT. Die SIE verändert
diese Bits entsprechend ihres aktuellen internen Zustands dynamisch. Die können
vom Anwender erst ausgewertet werden, wenn die SIE ihrerseits UOWN wieder auf
0 setzt und damit die Kontrolle an die CPU zurückgibt. Das geschieht jedoch nur,
wenn KEN vorher auf 0 gestanden hat, wie bereits beschrieben wurde. Im Anwen-
dungsprogramm sollte der Inhalt der beiden Register BDnSTAT und BDnCNT also
erst ausgewertet werden, nachdem UOWN von der SIE von 1 zu 0 geändert worden
ist. Der Standardfall ist, dass eine Transaktion beendet und für den betreffenden
Endpoint deswegen ein Transaction Complete Interrupt erzeugt wurde.
BDnCNT
DiezehnBitsBC0bisBC9sinddasByte-Count-RegisterdesjeweiligenEndpoints
n. Die beiden höchst wertigsten Bits BC8 und BC9 befinden sich im Register
BDnSTAT, gehören funktionell jedoch zumRegisterBDnCNT.FürIN-Endpoints
steht hier die Anzahl der Bytes, die in der letzten Transaktion an den Host versendet
wurden. Für OUT-Endpoints steht hier die Anzahl der Bytes, die in der letzten
Transaktion vom Host in den Endpoint gesendet wurden.
BDnSTAT
Die Bits PID0 bis PID3 enthalten den beim letzten Transfer empfangenen Packet
Identifier. Die Darstellung im Register BDnSTAT entspricht allerdings nicht dem
Format, in dem der Packet Identifier gemäß dem USB-Standard aufgebaut ist
[USB2.0: 8.3.1, Abb. 8.1 und Tabelle 8.1]. In der Form, wie der Packet Identifier im
BDnSTAT-Register steht, hat er folgende Bedeutung:
Packet Identifier (PID)
PID3
PID2
PID1
PID0
Bedeutung
0
0
0
0
Reserviert für zukünftige Verwendung
0
0
0
1
OUT Transaktion Token
0
0
1
0
ACK Handshake
0
0
1
1
DATA0 Datenpaket
0
1
0
0
PING Prüfung
0
1
0
1
SOF (Start of Fra e) Token
0
1
1
0
NYET Handshake
 
Search WWH ::




Custom Search