Struct nrf52::i2s::RegisterBlock [] [src]

#[repr(C)]
pub struct RegisterBlock { 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, // some fields omitted }

Register block

Fields

0x00 - Starts continuous I2S transfer. Also starts MCK generator when this is enabled.

0x04 - Stops I2S transfer. Also stops MCK generator. Triggering this task will cause the {event:STOPPED} event to be generated.

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.

0x108 - I2S transfer stopped.

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.

0x300 - Enable or disable interrupt

0x304 - Enable interrupt

0x308 - Disable interrupt

0x500 - Enable I2S module.