Struct nrf52::spi::registers::spim::SPIM [] [src]

#[repr(C)]
pub struct SPIM { _reserved0: [u32; 4], pub tasks_start: VolatileCell<u32>, pub tasks_stop: VolatileCell<u32>, _reserved1: u32, pub tasks_suspend: VolatileCell<u32>, pub tasks_resume: VolatileCell<u32>, _reserved2: [u32; 56], pub events_stopped: VolatileCell<u32>, _reserved3: [u32; 2], pub events_endrx: VolatileCell<u32>, _reserved4: u32, pub events_end: VolatileCell<u32>, _reserved5: u32, pub events_endtx: VolatileCell<u32>, _reserved6: [u32; 10], pub events_started: VolatileCell<u32>, _reserved7: [u32; 44], pub shorts: VolatileCell<u32>, _reserved8: [u32; 64], pub intenset: VolatileCell<InterruptEnable>, pub intenclr: VolatileCell<InterruptEnable>, _reserved9: [u32; 125], pub enable: VolatileCell<u32>, _reserved10: u32, pub psel_sck: VolatileCell<Pinmux>, pub psel_mosi: VolatileCell<Pinmux>, pub psel_miso: VolatileCell<Pinmux>, _reserved11: [u32; 4], pub frequency: VolatileCell<Frequency>, _reserved12: [u32; 3], pub rxd_ptr: VolatileCell<*mut u8>, pub rxd_maxcnt: VolatileCell<u32>, pub rxd_amount: VolatileCell<u32>, pub rxd_list: VolatileCell<u32>, pub txd_ptr: VolatileCell<*const u8>, pub txd_maxcnt: VolatileCell<u32>, pub txd_amount: VolatileCell<u32>, pub txd_list: VolatileCell<u32>, pub config: VolatileCell<Config>, _reserved13: [u32; 26], pub orc: VolatileCell<u32>, }

Represents one of NRF52's three SPIM instances.

Fields

Start SPI transaction

addr = base + 0x010

Stop SPI transaction

addr = base + 0x014

Suspend SPI transaction

addr = base + 0x01C

Resume SPI transaction

addr = base + 0x020

SPI transaction has stopped

addr = base + 0x104

End of RXD buffer reached

addr = base + 0x110

End of RXD buffer and TXD buffer reached

addr = base + 0x118

End of TXD buffer reached

addr = base + 0x120

Transaction started

addr = base + 0x14C

Shortcut register

addr = base + 0x200

Enable interrupt

addr = base + 0x304

Disable interrupt

base + addr = 0x308

Enable SPIM

addr = base + 0x500

Pin select for SCK

addr = base + 0x508

Pin select for MOSI signal

addr = base + 0x50C

Pin select for MISO signal

addr = base + 0x510

SPI frequency

addr = base + 0x524

Data pointer

addr = base + 0x534

Maximum number of bytes in receive buffer

addr = base + 0x538

Number of bytes transferred in the last transaction

addr = base + 0x53C

EasyDMA list type

addr = base + 0x540

Data pointer

base + addr = 0x544

Maximum number of bytes in transmit buffer

addr = base + 0x548

Number of bytes transferred in the last transaction

addr = base + 0x54C

EasyDMA list type

addr = base + 0x550

Configuration register

addr = base + 0x554

Over-read character. Character clocked out in case and over-read of the TXD buffer.

addr = base + 0x5C0