Electronic Components Datasheet Search
  New Zealand  ▼
ALLDATASHEET.CO.NZ

X  

PIC16F1459-ESSQTP Datasheet(PDF) 313 Page - Microchip Technology

Part # PIC16F1459-ESSQTP
Description  14/20-Pin Flash, 8-Bit USB Microcontrollers with XLP Technology
PDF  418 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  MICROCHIP [Microchip Technology]
Direct Link  http://www.microchip.com
Logo MICROCHIP - Microchip Technology

PIC16F1459-ESSQTP Datasheet(HTML) 313 Page - Microchip Technology

Back Button PIC16F1459-ESSQTP Datasheet HTML 309Page - Microchip Technology PIC16F1459-ESSQTP Datasheet HTML 310Page - Microchip Technology PIC16F1459-ESSQTP Datasheet HTML 311Page - Microchip Technology PIC16F1459-ESSQTP Datasheet HTML 312Page - Microchip Technology PIC16F1459-ESSQTP Datasheet HTML 313Page - Microchip Technology PIC16F1459-ESSQTP Datasheet HTML 314Page - Microchip Technology PIC16F1459-ESSQTP Datasheet HTML 315Page - Microchip Technology PIC16F1459-ESSQTP Datasheet HTML 316Page - Microchip Technology PIC16F1459-ESSQTP Datasheet HTML 317Page - Microchip Technology Next Button
Zoom Inzoom in Zoom Outzoom out
 313 / 418 page
background image
 2012 Microchip Technology Inc.
Preliminary
DS41639A-page 313
PIC16(L)F1454/5/9
26.3
USB RAM
USB data moves between the microcontroller core and
the SIE through the dual-port USB RAM. This is a
special dual access memory that is mapped into a
normal data memory space (Figure 26-3).
The dual-port general purpose memory space is used
specifically for endpoint buffer control. Depending on
the type of buffering being used, all but 8 bytes of Bank
0 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 26.4.1.1 “Buffer Ownership”.
FIGURE 26-3:
IMPLEMENTATION OF
USB RAM IN DATA
MEMORY SPACE
26.4
Buffer Descriptors and the Buffer
Descriptor Table
The dual-port general purpose memory space is used
specifically for endpoint buffer control in a structure
known as the Buffer Descriptor Table (BDT). This
provides a flexible method for users to construct and
control endpoint buffers of various lengths and
configuration.
The BDT is composed of Buffer Descriptors (BDs)
which are used to define and control the actual buffers
in the USB RAM space. Each BD, in turn, consists of
four registers:
• BDnSTAT: BD Status register
• BDnCNT: BD Byte Count register
• BDnADRL: BD Address Low register
• BDnADRH: BD Address High register
BDs always occur as a four-byte block in the sequence,
BDnSTAT:BDnCNT:BDnADRL:BDnADRH. The address
of BDnSTAT is accessible in linear data space at 2000h
+ (4n – 1) with n being the buffer descriptor number.
Depending on the buffering configuration used
(Section 26.4.4 “Ping-Pong Buffering”), there are
multiple sets of buffer descriptors. The USB
specification mandates that every device must have
Endpoint 0 with both input and output for initial setup.
Although they can be thought of as Special Function
Registers, the Buffer Descriptor Status and Address
registers are not hardware mapped, as conventional
microcontroller
SFRs
are.
When
the
endpoint
corresponding to a particular BD is not enabled, then its
registers are not used. Instead of appearing as
unimplemented addresses, however, they appear as
available RAM. Only when an endpoint is enabled by
setting the EPINEN bit of the UEPn register does the
memory at those addresses become functional as BD
registers. As with any address in the data memory
space, the BD registers have an indeterminate value on
any device Reset.
An example of a BD for a 64-byte buffer is shown in
Figure 26-4. A particular set of BD registers is only
valid if the corresponding endpoint has been enabled
using the EPINEN bit. All BD registers are available in
USB RAM. The BD for each endpoint should be set up
prior to enabling the endpoint.
512 Byte
CPU Dual-Port RAM
512 Byte
CPU Single-Port RAM
USB RAM Port Remap
(TSTDPEN = 1)
Unimplemented
Read ‘0’
2000h
21FFh
2200h
23FFh
2400h
25FFh
2600h
29AFh
Note:
Wherever BDn is identified within this
document, the n represents one of the
possible BDs.



Html Pages

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100  ...More


Datasheet Download

Go To PDF Page


Link URL



Does ALLDATASHEET help your business so far?  [ DONATE ] 

About Alldatasheet   |   Advertisement   |   Contact us   |   Privacy Policy   |   Link to Datasheet    |   Link Exchange   |   Manufacturer List
All Rights Reserved©Alldatasheet.com


Mirror Sites
English : Alldatasheet.com  |   English : Alldatasheet.net  |   Chinese : Alldatasheetcn.com  |   German : Alldatasheetde.com  |   Japanese : Alldatasheet.jp
Russian : Alldatasheetru.com  |   Korean : Alldatasheet.co.kr  |   Spanish : Alldatasheet.es  |   French : Alldatasheet.fr  |   Italian : Alldatasheetit.com
Portuguese : Alldatasheetpt.com  |   Polish : Alldatasheet.pl  |   Vietnamese : Alldatasheet.vn
Indian : Alldatasheet.in  |   Mexican : Alldatasheet.com.mx  |   British : Alldatasheet.co.uk  |   New Zealand : Alldatasheet.co.nz
Family Site : ic2ic.com  |   icmetro.com