English
Language : 

PIC18F44J50-I Datasheet, PDF (365/562 Pages) Microchip Technology – 28/44-Pin, Low-Power, High-Performance USB Microcontrollers
PIC18F46J50 FAMILY
22.2.5
USB ADDRESS REGISTER
(UADDR)
The USB Address register contains the unique USB
address that the peripheral will decode when active.
UADDR is reset to 00h when a USB Reset is received,
indicated by URSTIF, or when a Reset is received from
the microcontroller. The USB address must be written
by the microcontroller during the USB setup phase
(enumeration) as part of the Microchip USB firmware
support.
22.2.6
USB FRAME NUMBER REGISTERS
(UFRMH:UFRML)
The Frame Number registers contain the 11-bit frame
number. The low-order byte is contained in UFRML,
while the three high-order bits are contained in
UFRMH. The register pair is updated with the current
frame number whenever a SOF token is received. For
the microcontroller, these registers are read-only. The
Frame Number registers are primarily used for
isochronous transfers. The contents of the UFRMH and
UFRML registers are only valid when the 48 MHz SIE
clock is active (i.e., contents are inaccurate when the
SUSPND (UCON<1>) bit = 1).
22.3 USB RAM
USB data moves between the microcontroller core and
the SIE through a memory space known as the USB
RAM. This is a special dual access memory that is
mapped into the normal data memory space in Banks 0
through 14 (00h to EBFh) for a total of 3.8 Kbytes
(Figure 22-4).
Bank 4 (400h through 4FFh) is used specifically for
endpoint buffer control, while Banks 0 through 3 and
Banks 5 through 14 are available for USB data.
Depending on the type of buffering being used, all but
8 bytes of Bank 4 may also be available for use as USB
buffer space.
Although USB RAM is available to the microcontroller
as data memory, the sections that are being accessed
by the SIE should not be accessed by the
microcontroller. A semaphore mechanism is used to
determine the access to a particular buffer at any given
time. This is discussed in Section 22.4.1.1 “Buffer
Ownership”.
FIGURE 22-4:
IMPLEMENTATION OF
USB RAM IN DATA
MEMORY SPACE
Access Ram
USB Data or
User Data
000h
05Fh
060h
Buffer Descriptors,
USB Data or User Data
3FFh
400h
4FFh
500h
Banks 0
to 14
(USB RAM)
USB Data or
User Data
SFRs
EBFh
EC0h
FFFh
 2011 Microchip Technology Inc.
DS39931D-page 365