12-bit High-speed ADC (HSADC) Peripheral

The user manual UM10503 uses ADCHS to refer this peripheral. However the LPCOpen source code uses HSADC. This document will use HSADC excepts the register names used in the user manual.

Overview

The 12-bit high-speed ADC (HSADC) peripheral is only available on parts LPC4370 and LPC43S70.

Features

  • 12-bit high-speed analog to digital converter.
  • Input multiplexing among 6/3 pins.
  • Descriptor based conversion sequence for single or multiple inputs.
  • Integrated 14-bit timer
  • Optional automatic high/low threshold detection.
  • Power-down mode.
  • Measurement range 0 to 1.2 V.
  • 12-bit conversion rate of 80 MSamples/s.
  • Optional conversion on transition on input pin or various internal signals.
  • 16-word output FIFO with DMA support.

Channels and Pin Information

Table: Number of 12-bit high-speed ADC channels

Order Number Package Number of 12-bit high-speed ADC pins (channels)
LPC4370FET256 LBGA256 6
LPC4370FET100 TFBGA100 3
LPC43S70FET256 LBGA256 6
LPC43S70FET100 TFBGA100 3

Table: Pins for HSADC peripheral

LBGA256 Package TFBGA100 Package Type Description
ADCHS_0 E3 A2 I 12-bit high speed ADC input channel 0
ADCHS_1 C3 A1 I 12-bit high-speed ADC input channel 1
ADCHS_2 A4 B3 I 12-bit high-speed ADC input channel 2
ADCHS_3 A5 - I 12-bit high-speed ADC input channel 3
ADCHS_4 C6 - I 12-bit high-speed ADC input channel 4
ADCHS_5 B3 - I 12-bit high-speed ADC input channel 5
ADCHS_NEG B5 A3 I/O 12-bit high-speed ADC reference voltage output or negative differentiate input

To reduce interference, do not configure digital pins close to these pins.

Interrupts

This peripheral is connected to AHB bus, hence directly accessible by the M4 and M0 (aka M0APP) cores, except the M0 (aka M0SUB) subsystem core.

ADCHS interrupt is connected to

  • Interrupt ID 45 to the M4's NVIC
  • Interrupt ID 30 to the M0APP's NVIC
  • Interrupt ID 30 to the M0SUB's NVIC

Clock Source

The base clock for HSADC is BASE_ADCHS_CLK, which is used to sample and convert data. This clock frequency (fADC) can be up to 80 MHz. The conversion takes one clock cycle. Data is available, after the conversion latency, in the output FIFO and channel output registers (LAST_SAMPLE0 to LAST_SAMPLE5).

Another

Its base clock is BASE_ADCHS_CLK. The clock source can be from

  • IRC (default)
  • 32 kHz oscillator
  • ENET_RX_CLK
  • ENET_TX_CLK
  • GP_CLKIN
  • Crystal oscillator
  • PLL0 AUDIO

Basic Configuration

  1. Setup and enable clock to HSADC for register interface. The base clock is BASE_M4_CLK and the branch clock is CLK_M4_ADCHS.
  2. Setup and enable clock to HSADC sampling clock. The base clock is BASE_ADCHS_CLK_ _and the branch clock is CLK_ADCHS.
  3. Reset HSADC via ADCHS_RST which will clear everything.
  4. Setup FIFO for trip level and packing method

results matching ""

    No results matching ""