Struct nrf52840_pac::i2s::RegisterBlock
source · #[repr(C)]pub struct RegisterBlock {Show 14 fields
pub tasks_start: TASKS_START,
pub tasks_stop: TASKS_STOP,
pub events_rxptrupd: EVENTS_RXPTRUPD,
pub events_stopped: EVENTS_STOPPED,
pub events_txptrupd: EVENTS_TXPTRUPD,
pub inten: INTEN,
pub intenset: INTENSET,
pub intenclr: INTENCLR,
pub enable: ENABLE,
pub config: CONFIG,
pub rxd: RXD,
pub txd: TXD,
pub rxtxd: RXTXD,
pub psel: PSEL,
/* private fields */
}
Expand description
Register block
Fields§
§tasks_start: TASKS_START
0x00 - Starts continuous I2S transfer. Also starts MCK generator when this is enabled.
tasks_stop: TASKS_STOP
0x04 - Stops I2S transfer. Also stops MCK generator. Triggering this task will cause the {event:STOPPED} event to be generated.
events_rxptrupd: EVENTS_RXPTRUPD
0x104 - The RXD.PTR register has been copied to internal double-buffers. When the I2S module is started and RX is enabled, this event will be generated for every RXTXD.MAXCNT words that are received on the SDIN pin.
events_stopped: EVENTS_STOPPED
0x108 - I2S transfer stopped.
events_txptrupd: EVENTS_TXPTRUPD
0x114 - The TDX.PTR register has been copied to internal double-buffers. When the I2S module is started and TX is enabled, this event will be generated for every RXTXD.MAXCNT words that are sent on the SDOUT pin.
inten: INTEN
0x300 - Enable or disable interrupt
intenset: INTENSET
0x304 - Enable interrupt
intenclr: INTENCLR
0x308 - Disable interrupt
enable: ENABLE
0x500 - Enable I2S module.
config: CONFIG
0x504..0x52c - Unspecified
rxd: RXD
0x538 - Unspecified
txd: TXD
0x540 - Unspecified
rxtxd: RXTXD
0x550 - Unspecified
psel: PSEL
0x560..0x574 - Unspecified