atsam4e8e_pac/
twi1.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - Control Register"]
5    pub cr: CR,
6    #[doc = "0x04 - Master Mode Register"]
7    pub mmr: MMR,
8    #[doc = "0x08 - Slave Mode Register"]
9    pub smr: SMR,
10    #[doc = "0x0c - Internal Address Register"]
11    pub iadr: IADR,
12    #[doc = "0x10 - Clock Waveform Generator Register"]
13    pub cwgr: CWGR,
14    _reserved5: [u8; 0x0c],
15    #[doc = "0x20 - Status Register"]
16    pub sr: SR,
17    #[doc = "0x24 - Interrupt Enable Register"]
18    pub ier: IER,
19    #[doc = "0x28 - Interrupt Disable Register"]
20    pub idr: IDR,
21    #[doc = "0x2c - Interrupt Mask Register"]
22    pub imr: IMR,
23    #[doc = "0x30 - Receive Holding Register"]
24    pub rhr: RHR,
25    #[doc = "0x34 - Transmit Holding Register"]
26    pub thr: THR,
27    _reserved11: [u8; 0xac],
28    #[doc = "0xe4 - Write Protection Mode Register"]
29    pub wpmr: WPMR,
30    #[doc = "0xe8 - Write Protection Status Register"]
31    pub wpsr: WPSR,
32    _reserved13: [u8; 0x14],
33    #[doc = "0x100 - Receive Pointer Register"]
34    pub rpr: RPR,
35    #[doc = "0x104 - Receive Counter Register"]
36    pub rcr: RCR,
37    #[doc = "0x108 - Transmit Pointer Register"]
38    pub tpr: TPR,
39    #[doc = "0x10c - Transmit Counter Register"]
40    pub tcr: TCR,
41    #[doc = "0x110 - Receive Next Pointer Register"]
42    pub rnpr: RNPR,
43    #[doc = "0x114 - Receive Next Counter Register"]
44    pub rncr: RNCR,
45    #[doc = "0x118 - Transmit Next Pointer Register"]
46    pub tnpr: TNPR,
47    #[doc = "0x11c - Transmit Next Counter Register"]
48    pub tncr: TNCR,
49    #[doc = "0x120 - Transfer Control Register"]
50    pub ptcr: PTCR,
51    #[doc = "0x124 - Transfer Status Register"]
52    pub ptsr: PTSR,
53}
54#[doc = "CR (w) register accessor: an alias for `Reg<CR_SPEC>`"]
55pub type CR = crate::Reg<cr::CR_SPEC>;
56#[doc = "Control Register"]
57pub mod cr;
58#[doc = "MMR (rw) register accessor: an alias for `Reg<MMR_SPEC>`"]
59pub type MMR = crate::Reg<mmr::MMR_SPEC>;
60#[doc = "Master Mode Register"]
61pub mod mmr;
62#[doc = "SMR (rw) register accessor: an alias for `Reg<SMR_SPEC>`"]
63pub type SMR = crate::Reg<smr::SMR_SPEC>;
64#[doc = "Slave Mode Register"]
65pub mod smr;
66#[doc = "IADR (rw) register accessor: an alias for `Reg<IADR_SPEC>`"]
67pub type IADR = crate::Reg<iadr::IADR_SPEC>;
68#[doc = "Internal Address Register"]
69pub mod iadr;
70#[doc = "CWGR (rw) register accessor: an alias for `Reg<CWGR_SPEC>`"]
71pub type CWGR = crate::Reg<cwgr::CWGR_SPEC>;
72#[doc = "Clock Waveform Generator Register"]
73pub mod cwgr;
74#[doc = "SR (r) register accessor: an alias for `Reg<SR_SPEC>`"]
75pub type SR = crate::Reg<sr::SR_SPEC>;
76#[doc = "Status Register"]
77pub mod sr;
78#[doc = "IER (w) register accessor: an alias for `Reg<IER_SPEC>`"]
79pub type IER = crate::Reg<ier::IER_SPEC>;
80#[doc = "Interrupt Enable Register"]
81pub mod ier;
82#[doc = "IDR (w) register accessor: an alias for `Reg<IDR_SPEC>`"]
83pub type IDR = crate::Reg<idr::IDR_SPEC>;
84#[doc = "Interrupt Disable Register"]
85pub mod idr;
86#[doc = "IMR (r) register accessor: an alias for `Reg<IMR_SPEC>`"]
87pub type IMR = crate::Reg<imr::IMR_SPEC>;
88#[doc = "Interrupt Mask Register"]
89pub mod imr;
90#[doc = "RHR (r) register accessor: an alias for `Reg<RHR_SPEC>`"]
91pub type RHR = crate::Reg<rhr::RHR_SPEC>;
92#[doc = "Receive Holding Register"]
93pub mod rhr;
94#[doc = "THR (w) register accessor: an alias for `Reg<THR_SPEC>`"]
95pub type THR = crate::Reg<thr::THR_SPEC>;
96#[doc = "Transmit Holding Register"]
97pub mod thr;
98#[doc = "WPMR (rw) register accessor: an alias for `Reg<WPMR_SPEC>`"]
99pub type WPMR = crate::Reg<wpmr::WPMR_SPEC>;
100#[doc = "Write Protection Mode Register"]
101pub mod wpmr;
102#[doc = "WPSR (r) register accessor: an alias for `Reg<WPSR_SPEC>`"]
103pub type WPSR = crate::Reg<wpsr::WPSR_SPEC>;
104#[doc = "Write Protection Status Register"]
105pub mod wpsr;
106#[doc = "RPR (rw) register accessor: an alias for `Reg<RPR_SPEC>`"]
107pub type RPR = crate::Reg<rpr::RPR_SPEC>;
108#[doc = "Receive Pointer Register"]
109pub mod rpr;
110#[doc = "RCR (rw) register accessor: an alias for `Reg<RCR_SPEC>`"]
111pub type RCR = crate::Reg<rcr::RCR_SPEC>;
112#[doc = "Receive Counter Register"]
113pub mod rcr;
114#[doc = "TPR (rw) register accessor: an alias for `Reg<TPR_SPEC>`"]
115pub type TPR = crate::Reg<tpr::TPR_SPEC>;
116#[doc = "Transmit Pointer Register"]
117pub mod tpr;
118#[doc = "TCR (rw) register accessor: an alias for `Reg<TCR_SPEC>`"]
119pub type TCR = crate::Reg<tcr::TCR_SPEC>;
120#[doc = "Transmit Counter Register"]
121pub mod tcr;
122#[doc = "RNPR (rw) register accessor: an alias for `Reg<RNPR_SPEC>`"]
123pub type RNPR = crate::Reg<rnpr::RNPR_SPEC>;
124#[doc = "Receive Next Pointer Register"]
125pub mod rnpr;
126#[doc = "RNCR (rw) register accessor: an alias for `Reg<RNCR_SPEC>`"]
127pub type RNCR = crate::Reg<rncr::RNCR_SPEC>;
128#[doc = "Receive Next Counter Register"]
129pub mod rncr;
130#[doc = "TNPR (rw) register accessor: an alias for `Reg<TNPR_SPEC>`"]
131pub type TNPR = crate::Reg<tnpr::TNPR_SPEC>;
132#[doc = "Transmit Next Pointer Register"]
133pub mod tnpr;
134#[doc = "TNCR (rw) register accessor: an alias for `Reg<TNCR_SPEC>`"]
135pub type TNCR = crate::Reg<tncr::TNCR_SPEC>;
136#[doc = "Transmit Next Counter Register"]
137pub mod tncr;
138#[doc = "PTCR (w) register accessor: an alias for `Reg<PTCR_SPEC>`"]
139pub type PTCR = crate::Reg<ptcr::PTCR_SPEC>;
140#[doc = "Transfer Control Register"]
141pub mod ptcr;
142#[doc = "PTSR (r) register accessor: an alias for `Reg<PTSR_SPEC>`"]
143pub type PTSR = crate::Reg<ptsr::PTSR_SPEC>;
144#[doc = "Transfer Status Register"]
145pub mod ptsr;