![NXP Semiconductors LPC43Sxx Скачать руководство пользователя страница 1355](http://html1.mh-extra.com/html/nxp-semiconductors/lpc43sxx/lpc43sxx_user-manual_17218271355.webp)
UM10503
All information provided in this document is subject to legal disclaimers.
© NXP B.V. 2015. All rights reserved.
User manual
Rev. 2.1 — 10 December 2015
1355 of 1441
NXP Semiconductors
UM10503
Chapter 48: 12-bit ADC (ADCHS)
By branching to the other table with BRANCH set to 0b10, updating the old table and
branching back to the updated table, a sequence can be extended to unlimited size with
minimal real time software load. When swapping tables a DMA request can be raised to
enable the DMA to load a new table, see
Converted samples are stored per input channel M in register LAST_SAMPLE[M] and
also in the output FIFO. However, samples are not stored if BRANCH = 0b11. If the FIFO
is full no further data will be written in the FIFO and these samples will be lost. An interrupt
can be raised at a given FIFO fill level as defined by FIFO_LEVEL (see
) or
when the FIFO is empty. To reduce the FIFO access rate two samples can be packed in
on 32-bit word when PACKED_READ is set. Reading an empty FIFO will result in a value
0x00008000 or 0x80008000.
Both descriptor tables are double buffered; one active table and one shadow table. The
shadow table can be accessed by software via registers DESCRIPTOR_0 (or
DESCRIPTOR_1) or loaded via DMA (see
). The shadow table is copied
to the active table 0 (or 1) by setting bit UPDATE_TABLE in any of the descriptor 0
(descriptor 1) registers.
The active table and table entry are contained in register STATUS_REG1. It is possible to
load new values; these will be registered after the current entry has been processed. It is
not recommended to change this register while the table processing is running.
48.7.4 DMA access
48.7.4.1 DMA read
The FIFO can be read by DMA channel 8. A DMA transfer request is generated when the
FIFO fill level is equal to or more than set by FIFO_LEVEL. This is the same behavior that
will raise the interrupt flag FIFO_FULL. The burst size can be set to one in the DMA
Fig 189. Using BRANCH to control the descriptor table processing order
descript or 0
descript or 1
descript or 2
descript or 3
descript or 4
descript or 5
descript or 6
descript or 7
descriptor 0
descriptor 1
descriptor 2
descriptor 3
descriptor 4
descriptor 5
descriptor 6
descriptor 7
Table 0
Table 1
Trigger
BRANCH:
00 or 11: to next
01: to start
10: swap table
BR ANC H
00
00
00
00
10
x
x
x
BRAN CH
00
00
00
00
00
00
01
x