lpc845_pac/
dma0.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - DMA control."]
5    pub ctrl: crate::Reg<ctrl::CTRL_SPEC>,
6    #[doc = "0x04 - Interrupt status."]
7    pub intstat: crate::Reg<intstat::INTSTAT_SPEC>,
8    #[doc = "0x08 - SRAM address of the channel configuration table."]
9    pub srambase: crate::Reg<srambase::SRAMBASE_SPEC>,
10    _reserved3: [u8; 0x14],
11    #[doc = "0x20 - Channel Enable read and Set for all DMA channels."]
12    pub enableset0: crate::Reg<enableset0::ENABLESET0_SPEC>,
13    _reserved4: [u8; 0x04],
14    #[doc = "0x28 - Channel Enable Clear for all DMA channels."]
15    pub enableclr0: crate::Reg<enableclr0::ENABLECLR0_SPEC>,
16    _reserved5: [u8; 0x04],
17    #[doc = "0x30 - Channel Active status for all DMA channels."]
18    pub active0: crate::Reg<active0::ACTIVE0_SPEC>,
19    _reserved6: [u8; 0x04],
20    #[doc = "0x38 - Channel Busy status for all DMA channels."]
21    pub busy0: crate::Reg<busy0::BUSY0_SPEC>,
22    _reserved7: [u8; 0x04],
23    #[doc = "0x40 - Error Interrupt status for all DMA channels."]
24    pub errint0: crate::Reg<errint0::ERRINT0_SPEC>,
25    _reserved8: [u8; 0x04],
26    #[doc = "0x48 - Interrupt Enable read and Set for all DMA channels."]
27    pub intenset0: crate::Reg<intenset0::INTENSET0_SPEC>,
28    _reserved9: [u8; 0x04],
29    #[doc = "0x50 - Interrupt Enable Clear for all DMA channels."]
30    pub intenclr0: crate::Reg<intenclr0::INTENCLR0_SPEC>,
31    _reserved10: [u8; 0x04],
32    #[doc = "0x58 - Interrupt A status for all DMA channels."]
33    pub inta0: crate::Reg<inta0::INTA0_SPEC>,
34    _reserved11: [u8; 0x04],
35    #[doc = "0x60 - Interrupt B status for all DMA channels."]
36    pub intb0: crate::Reg<intb0::INTB0_SPEC>,
37    _reserved12: [u8; 0x04],
38    #[doc = "0x68 - Set ValidPending control bits for all DMA channels."]
39    pub setvalid0: crate::Reg<setvalid0::SETVALID0_SPEC>,
40    _reserved13: [u8; 0x04],
41    #[doc = "0x70 - Set Trigger control bits for all DMA channels."]
42    pub settrig0: crate::Reg<settrig0::SETTRIG0_SPEC>,
43    _reserved14: [u8; 0x04],
44    #[doc = "0x78 - Channel Abort control for all DMA channels."]
45    pub abort0: crate::Reg<abort0::ABORT0_SPEC>,
46    _reserved15: [u8; 0x0384],
47    #[doc = "0x400..0x40c - no description available"]
48    pub channel0: CHANNEL,
49    _reserved16: [u8; 0x04],
50    #[doc = "0x410..0x41c - no description available"]
51    pub channel1: CHANNEL,
52    _reserved17: [u8; 0x04],
53    #[doc = "0x420..0x42c - no description available"]
54    pub channel2: CHANNEL,
55    _reserved18: [u8; 0x04],
56    #[doc = "0x430..0x43c - no description available"]
57    pub channel3: CHANNEL,
58    _reserved19: [u8; 0x04],
59    #[doc = "0x440..0x44c - no description available"]
60    pub channel4: CHANNEL,
61    _reserved20: [u8; 0x04],
62    #[doc = "0x450..0x45c - no description available"]
63    pub channel5: CHANNEL,
64    _reserved21: [u8; 0x04],
65    #[doc = "0x460..0x46c - no description available"]
66    pub channel6: CHANNEL,
67    _reserved22: [u8; 0x04],
68    #[doc = "0x470..0x47c - no description available"]
69    pub channel7: CHANNEL,
70    _reserved23: [u8; 0x04],
71    #[doc = "0x480..0x48c - no description available"]
72    pub channel8: CHANNEL,
73    _reserved24: [u8; 0x04],
74    #[doc = "0x490..0x49c - no description available"]
75    pub channel9: CHANNEL,
76    _reserved25: [u8; 0x04],
77    #[doc = "0x4a0..0x4ac - no description available"]
78    pub channel10: CHANNEL,
79    _reserved26: [u8; 0x04],
80    #[doc = "0x4b0..0x4bc - no description available"]
81    pub channel11: CHANNEL,
82    _reserved27: [u8; 0x04],
83    #[doc = "0x4c0..0x4cc - no description available"]
84    pub channel12: CHANNEL,
85    _reserved28: [u8; 0x04],
86    #[doc = "0x4d0..0x4dc - no description available"]
87    pub channel13: CHANNEL,
88    _reserved29: [u8; 0x04],
89    #[doc = "0x4e0..0x4ec - no description available"]
90    pub channel14: CHANNEL,
91    _reserved30: [u8; 0x04],
92    #[doc = "0x4f0..0x4fc - no description available"]
93    pub channel15: CHANNEL,
94    _reserved31: [u8; 0x04],
95    #[doc = "0x500..0x50c - no description available"]
96    pub channel16: CHANNEL,
97    _reserved32: [u8; 0x04],
98    #[doc = "0x510..0x51c - no description available"]
99    pub channel17: CHANNEL,
100    _reserved33: [u8; 0x04],
101    #[doc = "0x520..0x52c - no description available"]
102    pub channel18: CHANNEL,
103    _reserved34: [u8; 0x04],
104    #[doc = "0x530..0x53c - no description available"]
105    pub channel19: CHANNEL,
106    _reserved35: [u8; 0x04],
107    #[doc = "0x540..0x54c - no description available"]
108    pub channel20: CHANNEL,
109    _reserved36: [u8; 0x04],
110    #[doc = "0x550..0x55c - no description available"]
111    pub channel21: CHANNEL,
112    _reserved37: [u8; 0x04],
113    #[doc = "0x560..0x56c - no description available"]
114    pub channel22: CHANNEL,
115    _reserved38: [u8; 0x04],
116    #[doc = "0x570..0x57c - no description available"]
117    pub channel23: CHANNEL,
118    _reserved39: [u8; 0x04],
119    #[doc = "0x580..0x58c - no description available"]
120    pub channel24: CHANNEL,
121}
122#[doc = r"Register block"]
123#[repr(C)]
124pub struct CHANNEL {
125    #[doc = "0x00 - Configuration register for DMA channel ."]
126    pub cfg: crate::Reg<self::channel::cfg::CFG_SPEC>,
127    #[doc = "0x04 - Control and status register for DMA channel ."]
128    pub ctlstat: crate::Reg<self::channel::ctlstat::CTLSTAT_SPEC>,
129    #[doc = "0x08 - Transfer configuration register for DMA channel ."]
130    pub xfercfg: crate::Reg<self::channel::xfercfg::XFERCFG_SPEC>,
131}
132#[doc = r"Register block"]
133#[doc = "no description available"]
134pub mod channel;
135#[doc = "CTRL register accessor: an alias for `Reg<CTRL_SPEC>`"]
136pub type CTRL = crate::Reg<ctrl::CTRL_SPEC>;
137#[doc = "DMA control."]
138pub mod ctrl;
139#[doc = "INTSTAT register accessor: an alias for `Reg<INTSTAT_SPEC>`"]
140pub type INTSTAT = crate::Reg<intstat::INTSTAT_SPEC>;
141#[doc = "Interrupt status."]
142pub mod intstat;
143#[doc = "SRAMBASE register accessor: an alias for `Reg<SRAMBASE_SPEC>`"]
144pub type SRAMBASE = crate::Reg<srambase::SRAMBASE_SPEC>;
145#[doc = "SRAM address of the channel configuration table."]
146pub mod srambase;
147#[doc = "ENABLESET0 register accessor: an alias for `Reg<ENABLESET0_SPEC>`"]
148pub type ENABLESET0 = crate::Reg<enableset0::ENABLESET0_SPEC>;
149#[doc = "Channel Enable read and Set for all DMA channels."]
150pub mod enableset0;
151#[doc = "ENABLECLR0 register accessor: an alias for `Reg<ENABLECLR0_SPEC>`"]
152pub type ENABLECLR0 = crate::Reg<enableclr0::ENABLECLR0_SPEC>;
153#[doc = "Channel Enable Clear for all DMA channels."]
154pub mod enableclr0;
155#[doc = "ACTIVE0 register accessor: an alias for `Reg<ACTIVE0_SPEC>`"]
156pub type ACTIVE0 = crate::Reg<active0::ACTIVE0_SPEC>;
157#[doc = "Channel Active status for all DMA channels."]
158pub mod active0;
159#[doc = "BUSY0 register accessor: an alias for `Reg<BUSY0_SPEC>`"]
160pub type BUSY0 = crate::Reg<busy0::BUSY0_SPEC>;
161#[doc = "Channel Busy status for all DMA channels."]
162pub mod busy0;
163#[doc = "ERRINT0 register accessor: an alias for `Reg<ERRINT0_SPEC>`"]
164pub type ERRINT0 = crate::Reg<errint0::ERRINT0_SPEC>;
165#[doc = "Error Interrupt status for all DMA channels."]
166pub mod errint0;
167#[doc = "INTENSET0 register accessor: an alias for `Reg<INTENSET0_SPEC>`"]
168pub type INTENSET0 = crate::Reg<intenset0::INTENSET0_SPEC>;
169#[doc = "Interrupt Enable read and Set for all DMA channels."]
170pub mod intenset0;
171#[doc = "INTENCLR0 register accessor: an alias for `Reg<INTENCLR0_SPEC>`"]
172pub type INTENCLR0 = crate::Reg<intenclr0::INTENCLR0_SPEC>;
173#[doc = "Interrupt Enable Clear for all DMA channels."]
174pub mod intenclr0;
175#[doc = "INTA0 register accessor: an alias for `Reg<INTA0_SPEC>`"]
176pub type INTA0 = crate::Reg<inta0::INTA0_SPEC>;
177#[doc = "Interrupt A status for all DMA channels."]
178pub mod inta0;
179#[doc = "INTB0 register accessor: an alias for `Reg<INTB0_SPEC>`"]
180pub type INTB0 = crate::Reg<intb0::INTB0_SPEC>;
181#[doc = "Interrupt B status for all DMA channels."]
182pub mod intb0;
183#[doc = "SETVALID0 register accessor: an alias for `Reg<SETVALID0_SPEC>`"]
184pub type SETVALID0 = crate::Reg<setvalid0::SETVALID0_SPEC>;
185#[doc = "Set ValidPending control bits for all DMA channels."]
186pub mod setvalid0;
187#[doc = "SETTRIG0 register accessor: an alias for `Reg<SETTRIG0_SPEC>`"]
188pub type SETTRIG0 = crate::Reg<settrig0::SETTRIG0_SPEC>;
189#[doc = "Set Trigger control bits for all DMA channels."]
190pub mod settrig0;
191#[doc = "ABORT0 register accessor: an alias for `Reg<ABORT0_SPEC>`"]
192pub type ABORT0 = crate::Reg<abort0::ABORT0_SPEC>;
193#[doc = "Channel Abort control for all DMA channels."]
194pub mod abort0;