1#[doc = r"Register block"]
6#[repr(C)]
7pub struct RegisterBlock {
8 #[doc = "0x00 - Data Register"]
9 pub data: DATA,
10 #[doc = "0x04 - Data Output Register"]
11 pub dataout: DATAOUT,
12 _reserved2: [u8; 0x08],
13 #[doc = "0x10 - Ouptut enable set Register"]
14 pub outenset: OUTENSET,
15 #[doc = "0x14 - Ouptut enable clear Register"]
16 pub outenclr: OUTENCLR,
17 #[doc = "0x18 - Alternate function set Register"]
18 pub altfuncset: ALTFUNCSET,
19 #[doc = "0x1c - Alternate function clear Register"]
20 pub altfuncclr: ALTFUNCCLR,
21 #[doc = "0x20 - Interrupt enable set Register"]
22 pub intenset: INTENSET,
23 #[doc = "0x24 - Interrupt enable clear Register"]
24 pub intenclr: INTENCLR,
25 #[doc = "0x28 - Interrupt type set Register"]
26 pub inttypeset: INTTYPESET,
27 #[doc = "0x2c - Interrupt type clear Register"]
28 pub inttypeclr: INTTYPECLR,
29 #[doc = "0x30 - Polarity-level, edge interrupt configuration set Register"]
30 pub intpolset: INTPOLSET,
31 #[doc = "0x34 - Polarity-level, edge interrupt configuration clear Register"]
32 pub intpolclr: INTPOLCLR,
33 _reserved_12_intclear: [u8; 0x04],
34}
35impl RegisterBlock {
36 #[doc = "0x38 - Interrupt CLEAR Register"]
37 #[inline(always)]
38 pub fn intclear(&self) -> &INTCLEAR {
39 unsafe { &*(((self as *const Self) as *const u8).add(56usize) as *const INTCLEAR) }
40 }
41 #[doc = "0x38 - Interrupt Status Register"]
42 #[inline(always)]
43 pub fn intstatus(&self) -> &INTSTATUS {
44 unsafe { &*(((self as *const Self) as *const u8).add(56usize) as *const INTSTATUS) }
45 }
46}
47#[doc = "DATA (rw) register accessor: an alias for `Reg<DATA_SPEC>`"]
48pub type DATA = crate::Reg<data::DATA_SPEC>;
49#[doc = "Data Register"]
50pub mod data;
51#[doc = "DATAOUT (rw) register accessor: an alias for `Reg<DATAOUT_SPEC>`"]
52pub type DATAOUT = crate::Reg<dataout::DATAOUT_SPEC>;
53#[doc = "Data Output Register"]
54pub mod dataout;
55#[doc = "OUTENSET (rw) register accessor: an alias for `Reg<OUTENSET_SPEC>`"]
56pub type OUTENSET = crate::Reg<outenset::OUTENSET_SPEC>;
57#[doc = "Ouptut enable set Register"]
58pub mod outenset;
59#[doc = "OUTENCLR (rw) register accessor: an alias for `Reg<OUTENCLR_SPEC>`"]
60pub type OUTENCLR = crate::Reg<outenclr::OUTENCLR_SPEC>;
61#[doc = "Ouptut enable clear Register"]
62pub mod outenclr;
63#[doc = "ALTFUNCSET (rw) register accessor: an alias for `Reg<ALTFUNCSET_SPEC>`"]
64pub type ALTFUNCSET = crate::Reg<altfuncset::ALTFUNCSET_SPEC>;
65#[doc = "Alternate function set Register"]
66pub mod altfuncset;
67#[doc = "ALTFUNCCLR (rw) register accessor: an alias for `Reg<ALTFUNCCLR_SPEC>`"]
68pub type ALTFUNCCLR = crate::Reg<altfuncclr::ALTFUNCCLR_SPEC>;
69#[doc = "Alternate function clear Register"]
70pub mod altfuncclr;
71#[doc = "INTENSET (rw) register accessor: an alias for `Reg<INTENSET_SPEC>`"]
72pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>;
73#[doc = "Interrupt enable set Register"]
74pub mod intenset;
75#[doc = "INTENCLR (rw) register accessor: an alias for `Reg<INTENCLR_SPEC>`"]
76pub type INTENCLR = crate::Reg<intenclr::INTENCLR_SPEC>;
77#[doc = "Interrupt enable clear Register"]
78pub mod intenclr;
79#[doc = "INTTYPESET (rw) register accessor: an alias for `Reg<INTTYPESET_SPEC>`"]
80pub type INTTYPESET = crate::Reg<inttypeset::INTTYPESET_SPEC>;
81#[doc = "Interrupt type set Register"]
82pub mod inttypeset;
83#[doc = "INTTYPECLR (rw) register accessor: an alias for `Reg<INTTYPECLR_SPEC>`"]
84pub type INTTYPECLR = crate::Reg<inttypeclr::INTTYPECLR_SPEC>;
85#[doc = "Interrupt type clear Register"]
86pub mod inttypeclr;
87#[doc = "INTPOLSET (rw) register accessor: an alias for `Reg<INTPOLSET_SPEC>`"]
88pub type INTPOLSET = crate::Reg<intpolset::INTPOLSET_SPEC>;
89#[doc = "Polarity-level, edge interrupt configuration set Register"]
90pub mod intpolset;
91#[doc = "INTPOLCLR (rw) register accessor: an alias for `Reg<INTPOLCLR_SPEC>`"]
92pub type INTPOLCLR = crate::Reg<intpolclr::INTPOLCLR_SPEC>;
93#[doc = "Polarity-level, edge interrupt configuration clear Register"]
94pub mod intpolclr;
95#[doc = "INTSTATUS (r) register accessor: an alias for `Reg<INTSTATUS_SPEC>`"]
96pub type INTSTATUS = crate::Reg<intstatus::INTSTATUS_SPEC>;
97#[doc = "Interrupt Status Register"]
98pub mod intstatus;
99#[doc = "INTCLEAR (w) register accessor: an alias for `Reg<INTCLEAR_SPEC>`"]
100pub type INTCLEAR = crate::Reg<intclear::INTCLEAR_SPEC>;
101#[doc = "Interrupt CLEAR Register"]
102pub mod intclear;