
PIC18F2450/4450
2006 Microchip Technology Inc.
Advance Information
DS39760A-page 139
REGISTER 14-5:
BDnSTAT: BUFFER DESCRIPTOR n STATUS REGISTER (BD0STAT THROUGH
BD63STAT), CPU MODE (DATA IS WRITTEN TO THE SIDE)
R/W-x
UOWN(1)
DTS(2)
—(3)
DTSEN
BSTALL
BC9
BC8
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
U = Unimplemented bit, read as ‘0’
-n = Value at POR
‘1’ = Bit is set
‘0’ = Bit is cleared
x = Bit is unknown
bit 7
UOWN: USB Own bit(1)
0
= The microcontroller core owns the BD and its corresponding buffer
bit 6
DTS: Data Toggle Synchronization bit(2)
1
= Data 1 packet
0
= Data 0 packet
bit 5-4
Reserved: These bits should always be programmed to ‘0’(3)
bit 3
DTSEN: Data Toggle Synchronization Enable bit
1
= Data toggle synchronization is enabled; data packets with incorrect Sync value will be ignored
0
= No data toggle synchronization is performed
bit 2
BSTALL: Buffer Stall Enable bit
1
= Buffer stall enabled; STALL handshake issued if a token is received that would use the BD in the
given location (UOWN bit remains set, BD value is unchanged)
0
= Buffer stall disabled
bit 1-0
BC9:BC8: Byte Count 9 and 8 bits
The byte count bits represent the number of bytes that will be transmitted for an IN token or received
during an OUT token. Together with BC<7:0>, the valid byte counts are 0-1023.
Note 1:
This bit must be initialized by the user to the desired value prior to enabling the USB module.
2:
This bit is ignored unless DTSEN = 1.
3:
If these bits are set, USB communication may not work. Hence, these bits should always be maintained
as ‘0’.