#[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_START0x00 - Starts continuous I2S transfer. Also starts MCK generator when this is enabled.
tasks_stop: TASKS_STOP0x04 - Stops I2S transfer. Also stops MCK generator. Triggering this task will cause the {event:STOPPED} event to be generated.
events_rxptrupd: EVENTS_RXPTRUPD0x104 - 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_STOPPED0x108 - I2S transfer stopped.
events_txptrupd: EVENTS_TXPTRUPD0x114 - 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: INTEN0x300 - Enable or disable interrupt
intenset: INTENSET0x304 - Enable interrupt
intenclr: INTENCLR0x308 - Disable interrupt
enable: ENABLE0x500 - Enable I2S module.
config: CONFIG0x504..0x52c - Unspecified
rxd: RXD0x538 - Unspecified
txd: TXD0x540 - Unspecified
rxtxd: RXTXD0x550 - Unspecified
psel: PSEL0x560..0x574 - Unspecified