atsaml21j18b/sercom0/
spi.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct SPI {
4    #[doc = "0x00 - SPI Control A"]
5    pub ctrla: CTRLA,
6    #[doc = "0x04 - SPI Control B"]
7    pub ctrlb: CTRLB,
8    _reserved2: [u8; 0x04],
9    #[doc = "0x0c - SPI Baud Rate"]
10    pub baud: BAUD,
11    _reserved3: [u8; 0x07],
12    #[doc = "0x14 - SPI Interrupt Enable Clear"]
13    pub intenclr: INTENCLR,
14    _reserved4: [u8; 0x01],
15    #[doc = "0x16 - SPI Interrupt Enable Set"]
16    pub intenset: INTENSET,
17    _reserved5: [u8; 0x01],
18    #[doc = "0x18 - SPI Interrupt Flag Status and Clear"]
19    pub intflag: INTFLAG,
20    _reserved6: [u8; 0x01],
21    #[doc = "0x1a - SPI Status"]
22    pub status: STATUS,
23    #[doc = "0x1c - SPI Synchronization Busy"]
24    pub syncbusy: SYNCBUSY,
25    _reserved8: [u8; 0x04],
26    #[doc = "0x24 - SPI Address"]
27    pub addr: ADDR,
28    #[doc = "0x28 - SPI Data"]
29    pub data: DATA,
30    _reserved10: [u8; 0x04],
31    #[doc = "0x30 - SPI Debug Control"]
32    pub dbgctrl: DBGCTRL,
33}
34#[doc = "CTRLA (rw) register accessor: an alias for `Reg<CTRLA_SPEC>`"]
35pub type CTRLA = crate::Reg<ctrla::CTRLA_SPEC>;
36#[doc = "SPI Control A"]
37pub mod ctrla;
38#[doc = "CTRLB (rw) register accessor: an alias for `Reg<CTRLB_SPEC>`"]
39pub type CTRLB = crate::Reg<ctrlb::CTRLB_SPEC>;
40#[doc = "SPI Control B"]
41pub mod ctrlb;
42#[doc = "BAUD (rw) register accessor: an alias for `Reg<BAUD_SPEC>`"]
43pub type BAUD = crate::Reg<baud::BAUD_SPEC>;
44#[doc = "SPI Baud Rate"]
45pub mod baud;
46#[doc = "INTENCLR (rw) register accessor: an alias for `Reg<INTENCLR_SPEC>`"]
47pub type INTENCLR = crate::Reg<intenclr::INTENCLR_SPEC>;
48#[doc = "SPI Interrupt Enable Clear"]
49pub mod intenclr;
50#[doc = "INTENSET (rw) register accessor: an alias for `Reg<INTENSET_SPEC>`"]
51pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>;
52#[doc = "SPI Interrupt Enable Set"]
53pub mod intenset;
54#[doc = "INTFLAG (rw) register accessor: an alias for `Reg<INTFLAG_SPEC>`"]
55pub type INTFLAG = crate::Reg<intflag::INTFLAG_SPEC>;
56#[doc = "SPI Interrupt Flag Status and Clear"]
57pub mod intflag;
58#[doc = "STATUS (rw) register accessor: an alias for `Reg<STATUS_SPEC>`"]
59pub type STATUS = crate::Reg<status::STATUS_SPEC>;
60#[doc = "SPI Status"]
61pub mod status;
62#[doc = "SYNCBUSY (r) register accessor: an alias for `Reg<SYNCBUSY_SPEC>`"]
63pub type SYNCBUSY = crate::Reg<syncbusy::SYNCBUSY_SPEC>;
64#[doc = "SPI Synchronization Busy"]
65pub mod syncbusy;
66#[doc = "ADDR (rw) register accessor: an alias for `Reg<ADDR_SPEC>`"]
67pub type ADDR = crate::Reg<addr::ADDR_SPEC>;
68#[doc = "SPI Address"]
69pub mod addr;
70#[doc = "DATA (rw) register accessor: an alias for `Reg<DATA_SPEC>`"]
71pub type DATA = crate::Reg<data::DATA_SPEC>;
72#[doc = "SPI Data"]
73pub mod data;
74#[doc = "DBGCTRL (rw) register accessor: an alias for `Reg<DBGCTRL_SPEC>`"]
75pub type DBGCTRL = crate::Reg<dbgctrl::DBGCTRL_SPEC>;
76#[doc = "SPI Debug Control"]
77pub mod dbgctrl;