Registers

nRF54LM20A | nRF54LM20B Datasheet

Instances

Instance Domain Base address TrustZone Split access Description
Map Att DMA

PDM20 : S
PDM20 : NS

GLOBAL

0x500D0000
0x400D0000

US S SA No

Pulse density modulation (digital microphone) interface PDM20

PDM21 : S
PDM21 : NS

GLOBAL

0x500D1000
0x400D1000

US S SA No

Pulse density modulation (digital microphone) interface PDM21

Configuration

Instance Domain Configuration

PDM20 : S
PDM20 : NS

GLOBAL

Use GPIO port P1 or P3

ACLK is the fixed 24 MHz clock PCLK24M

PCLK is the fixed 32 MHz clock PCLK32M

Supports 8, 16, 32, 48 kHz sample rate.

CURRENTAMOUNT register included.

PDM21 : S
PDM21 : NS

GLOBAL

Use GPIO port P1 or P3

ACLK is the fixed 24 MHz clock PCLK24M

PCLK is the fixed 32 MHz clock PCLK32M

Supports 8, 16, 32, 48 kHz sample rate.

CURRENTAMOUNT register included.

Register overview

Register Offset TZ Description
TASKS_START 0x000

Starts continuous PDM transfer

TASKS_STOP 0x004

Stops PDM transfer

SUBSCRIBE_START 0x080

Subscribe configuration for task START

SUBSCRIBE_STOP 0x084

Subscribe configuration for task STOP

EVENTS_STARTED 0x100

PDM transfer has started

EVENTS_STOPPED 0x104

PDM transfer has finished

EVENTS_END 0x108

The PDM has written the last sample specified by SAMPLE.MAXCNT (or the last sample after a STOP task has been received) to Data RAM

EVENTS_DMA.BUSERROR 0x110

This event is generated if an error occurs during the bus transfer.

PUBLISH_STARTED 0x180

Publish configuration for event STARTED

PUBLISH_STOPPED 0x184

Publish configuration for event STOPPED

PUBLISH_END 0x188

Publish configuration for event END

PUBLISH_DMA.BUSERROR 0x190

Publish configuration for event DMA.BUSERROR

INTEN 0x300

Enable or disable interrupt

INTENSET 0x304

Enable interrupt

INTENCLR 0x308

Disable interrupt

INTPEND 0x30C

Pending interrupts

ENABLE 0x500

PDM module enable register

MODE 0x508

Defines the routing of the connected PDM microphone signals

GAINL 0x518

Left output gain adjustment

GAINR 0x51C

Right output gain adjustment

RATIO 0x520

Selects the decimation ratio between PDM_CLK and output sample rate. When RATIO is selected to be "custom", the decimation rate should be set using the FILTER.CTRL field before setting the RATIO to 7

Change PRESCALER.DIVISOR accordingly.

FILTER.CTRL 0x524

Aditional PDM configurability

FILTER.HPPOLE 0x528

Settings for the high-pass filter

FILTER.HPDISABLE 0x52C

High pass filter disable

FILTER.SOFTMUTE 0x530

Soft mute function

FILTER.SOFTCYCLES 0x534

Soft mute settings

FILTER.SAMPLEDELAY 0x538

Input Data Sampling with Number of ckFilterL (double frequency of PDM_CLK) Clock Cycle Delay. Optionally,input sample point can be delayed independently on left and right channels using FILTER:CTRL[20:19] bits

PSEL.CLK 0x540

Pin number configuration for PDM CLK signal

PSEL.DIN 0x544

Pin number configuration for PDM DIN signal

CLKSELECT 0x54C

Master clock generator configuration

SAMPLE.PTR 0x560

RAM address pointer to write samples to with EasyDMA

SAMPLE.MAXCNT 0x564

Number of bytes to allocate memory for in EasyDMA mode

PRESCALER 0x580

The prescaler is used to set the PDM frequency

DMA.TERMINATEONBUSERROR 0x700

Terminate the transaction if a BUSERROR event is detected.

DMA.BUSERRORADDRESS 0x704

Address of transaction that generated the last BUSERROR event.