Registers

nRF54LM20A | nRF54LM20B Datasheet

Instances

Instance Domain Base address TrustZone Split access Description
Map Att DMA

TDM : S
TDM : NS

GLOBAL

0x500E8000
0x400E8000

US S SA No

Time division multiplexed audio interface TDM

Configuration

Instance Domain Configuration

TDM : S
TDM : NS

GLOBAL

Use GPIO port P1 or P3

ACLK is the fixed 24 MHz clock PCLK24M

PCLK is the fixed 32 MHz clock PCLK32M

CURRENTAMOUNT register included.

Register overview

Register Offset TZ Description
TASKS_START 0x000

Starts continuous TDM transfer. Also starts MCK when this is enabled

TASKS_STOP 0x004

Stops TDM transfer after the completion of MAXCNT bytes. Triggering this task will cause the STOPPED event to be generated.

TASKS_ABORT 0x008

Abort TDM transfer without completing MAXCNT bytes. Triggering this task will cause the ABORTED event to be generated.

SUBSCRIBE_START 0x080

Subscribe configuration for task START

SUBSCRIBE_STOP 0x084

Subscribe configuration for task STOP

SUBSCRIBE_ABORT 0x088

Subscribe configuration for task ABORT

EVENTS_RXPTRUPD 0x104

The RXD.PTR register has been copied to internal double-buffers. When TDM is started and RX is enabled, this event will be generated for every RXTXD.MAXCNT bytes received on the SDIN pin.

EVENTS_STOPPED 0x108

Transfer stopped.

EVENTS_ABORTED 0x10C

Transfer aborted.

EVENTS_TXPTRUPD 0x118

The TDX.PTR register has been copied to internal double-buffers. When TDM is started and TX is enabled, this event will be generated for every RXTXD.MAXCNT bytes that are sent on the SDOUT pin.

EVENTS_MAXCNT 0x120

Generated on the active edge of FSYNC, after both RX and TX DMA transfers have completed. An initial MAXCNT event is also triggered on the first active edge of FSYNC after the START task is issued.

EVENTS_BUSERROR_RX 0x124

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

EVENTS_BUSERROR_TX 0x128

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

PUBLISH_RXPTRUPD 0x184

Publish configuration for event RXPTRUPD

PUBLISH_STOPPED 0x188

Publish configuration for event STOPPED

PUBLISH_ABORTED 0x18C

Publish configuration for event ABORTED

PUBLISH_TXPTRUPD 0x198

Publish configuration for event TXPTRUPD

PUBLISH_MAXCNT 0x1A0

Publish configuration for event MAXCNT

PUBLISH_BUSERROR_RX 0x1A4

Publish configuration for event BUSERROR_RX

PUBLISH_BUSERROR_TX 0x1A8

Publish configuration for event BUSERROR_TX

INTEN 0x300

Enable or disable interrupt

INTENSET 0x304

Enable interrupt

INTENCLR 0x308

Disable interrupt

INTPEND 0x30C

Pending interrupts

ENABLE 0x500

Enable TDM

CONFIG.MODE 0x504

Mode configuration

CONFIG.RXTXEN 0x508

Reception (RX) and transmission (TX) enable.

CONFIG.MCK.EN 0x50C

Master clock generator enable.

CONFIG.MCK.DIV 0x510

MCK divider.

CONFIG.MCK.SRC 0x514

MCK clock source selection

CONFIG.SCK.DIV 0x518

SCK divider.

CONFIG.SCK.SRC 0x51C

SCK clock source selection

CONFIG.SCK.POLARITY 0x520

Set SCK Polarity.

CONFIG.SWIDTH 0x524

Sample and word width configuration.

CONFIG.ALIGN 0x528

Alignment of sample within the audio data word.

CONFIG.CHANNEL.MASK 0x52C

Select which channels are to be used.

CONFIG.CHANNEL.NUM 0x530

Select number of channels.

CONFIG.CHANNEL.DELAY 0x534

Set channel delay.

CONFIG.FSYNC.POLARITY 0x538

Set FSYNC Polarity.

CONFIG.FSYNC.DURATION 0x53C

Set FSYNC duration.

CONFIG.ORS 0x540

Over-read sample: Extra sample(s) to be transmitted after TXD.MAXCNT bytes have been transmitted.

PSEL.MCK 0x570

Pin select for MCK signal

PSEL.SCK 0x574

Pin select for SCK signal

PSEL.FSYNC 0x578

Pin select for FSYNC signal

PSEL.SDIN 0x57C

Pin select for SDIN signal

PSEL.SDOUT 0x580

Pin select for SDOUT signal

RXD.PTR 0x704

RAM buffer start address

RXD.MAXCNT 0x708

Maximum number of bytes in channel buffer

RXD.AMOUNT 0x70C

Number of bytes transferred in the last transaction, updated after the END event.

RXD.CURRENTAMOUNT 0x710

Number of bytes transferred in the current transaction

RXD.MODE 0x718

Configure EasyDMA mode

RXD.TERMINATEONBUSERROR 0x71C

Terminate the transaction if a BUSERROR event is detected.

RXD.BUSERRORADDRESS 0x720

Address of transaction that generated the last BUSERROR event.

TXD.PTR 0x744

RAM buffer start address

TXD.MAXCNT 0x748

Maximum number of bytes in channel buffer

TXD.AMOUNT 0x74C

Number of bytes transferred in the last transaction, updated after the END event.

TXD.CURRENTAMOUNT 0x750

Number of bytes transferred in the current transaction

TXD.MODE 0x758

Configure EasyDMA mode

TXD.TERMINATEONBUSERROR 0x75C

Terminate the transaction if a BUSERROR event is detected.

TXD.BUSERRORADDRESS 0x760

Address of transaction that generated the last BUSERROR event.