1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 ledc_ctrl: LEDC_CTRL,
5 led_t01_timing_ctrl: LED_T01_TIMING_CTRL,
6 ledc_data_finish_cnt: LEDC_DATA_FINISH_CNT,
7 led_reset_timing_ctrl: LED_RESET_TIMING_CTRL,
8 ledc_wait_time0_ctrl: LEDC_WAIT_TIME0_CTRL,
9 ledc_data: LEDC_DATA,
10 ledc_dma_ctrl: LEDC_DMA_CTRL,
11 ledc_int_ctrl: LEDC_INT_CTRL,
12 ledc_int_sts: LEDC_INT_STS,
13 _reserved9: [u8; 0x04],
14 ledc_wait_time1_ctrl: LEDC_WAIT_TIME1_CTRL,
15 _reserved10: [u8; 0x04],
16 ledc_fifo_data: [LEDC_FIFO_DATA; 32],
17}
18impl RegisterBlock {
19 #[doc = "0x00 - LEDC Control Register"]
20 #[inline(always)]
21 pub const fn ledc_ctrl(&self) -> &LEDC_CTRL {
22 &self.ledc_ctrl
23 }
24 #[doc = "0x04 - LEDC T0 T1 Timing Control Register"]
25 #[inline(always)]
26 pub const fn led_t01_timing_ctrl(&self) -> &LED_T01_TIMING_CTRL {
27 &self.led_t01_timing_ctrl
28 }
29 #[doc = "0x08 - LEDC Data Finish Counter Register"]
30 #[inline(always)]
31 pub const fn ledc_data_finish_cnt(&self) -> &LEDC_DATA_FINISH_CNT {
32 &self.ledc_data_finish_cnt
33 }
34 #[doc = "0x0c - LEDC Reset Timing Control Register"]
35 #[inline(always)]
36 pub const fn led_reset_timing_ctrl(&self) -> &LED_RESET_TIMING_CTRL {
37 &self.led_reset_timing_ctrl
38 }
39 #[doc = "0x10 - LEDC Wait Time0 Control Register"]
40 #[inline(always)]
41 pub const fn ledc_wait_time0_ctrl(&self) -> &LEDC_WAIT_TIME0_CTRL {
42 &self.ledc_wait_time0_ctrl
43 }
44 #[doc = "0x14 - LEDC Data Register"]
45 #[inline(always)]
46 pub const fn ledc_data(&self) -> &LEDC_DATA {
47 &self.ledc_data
48 }
49 #[doc = "0x18 - LEDC DMA Control Register"]
50 #[inline(always)]
51 pub const fn ledc_dma_ctrl(&self) -> &LEDC_DMA_CTRL {
52 &self.ledc_dma_ctrl
53 }
54 #[doc = "0x1c - LEDC Interrupt Control Register"]
55 #[inline(always)]
56 pub const fn ledc_int_ctrl(&self) -> &LEDC_INT_CTRL {
57 &self.ledc_int_ctrl
58 }
59 #[doc = "0x20 - LEDC Interrupt Status Register"]
60 #[inline(always)]
61 pub const fn ledc_int_sts(&self) -> &LEDC_INT_STS {
62 &self.ledc_int_sts
63 }
64 #[doc = "0x28 - LEDC Wait Time1 Control Register"]
65 #[inline(always)]
66 pub const fn ledc_wait_time1_ctrl(&self) -> &LEDC_WAIT_TIME1_CTRL {
67 &self.ledc_wait_time1_ctrl
68 }
69 #[doc = "0x30..0xb0 - LEDC FIFO Data Register"]
70 #[inline(always)]
71 pub const fn ledc_fifo_data(&self, n: usize) -> &LEDC_FIFO_DATA {
72 &self.ledc_fifo_data[n]
73 }
74}
75#[doc = "ledc_ctrl (rw) register accessor: LEDC Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ledc_ctrl::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ledc_ctrl::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ledc_ctrl`] module"]
76pub type LEDC_CTRL = crate::Reg<ledc_ctrl::LEDC_CTRL_SPEC>;
77#[doc = "LEDC Control Register"]
78pub mod ledc_ctrl;
79#[doc = "led_t01_timing_ctrl (rw) register accessor: LEDC T0 T1 Timing Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`led_t01_timing_ctrl::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`led_t01_timing_ctrl::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@led_t01_timing_ctrl`] module"]
80pub type LED_T01_TIMING_CTRL = crate::Reg<led_t01_timing_ctrl::LED_T01_TIMING_CTRL_SPEC>;
81#[doc = "LEDC T0 T1 Timing Control Register"]
82pub mod led_t01_timing_ctrl;
83#[doc = "ledc_data_finish_cnt (rw) register accessor: LEDC Data Finish Counter Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ledc_data_finish_cnt::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ledc_data_finish_cnt::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ledc_data_finish_cnt`] module"]
84pub type LEDC_DATA_FINISH_CNT = crate::Reg<ledc_data_finish_cnt::LEDC_DATA_FINISH_CNT_SPEC>;
85#[doc = "LEDC Data Finish Counter Register"]
86pub mod ledc_data_finish_cnt;
87#[doc = "led_reset_timing_ctrl (rw) register accessor: LEDC Reset Timing Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`led_reset_timing_ctrl::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`led_reset_timing_ctrl::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@led_reset_timing_ctrl`] module"]
88pub type LED_RESET_TIMING_CTRL = crate::Reg<led_reset_timing_ctrl::LED_RESET_TIMING_CTRL_SPEC>;
89#[doc = "LEDC Reset Timing Control Register"]
90pub mod led_reset_timing_ctrl;
91#[doc = "ledc_wait_time0_ctrl (rw) register accessor: LEDC Wait Time0 Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ledc_wait_time0_ctrl::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ledc_wait_time0_ctrl::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ledc_wait_time0_ctrl`] module"]
92pub type LEDC_WAIT_TIME0_CTRL = crate::Reg<ledc_wait_time0_ctrl::LEDC_WAIT_TIME0_CTRL_SPEC>;
93#[doc = "LEDC Wait Time0 Control Register"]
94pub mod ledc_wait_time0_ctrl;
95#[doc = "ledc_data (w) register accessor: LEDC Data Register\n\nYou can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ledc_data::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ledc_data`] module"]
96pub type LEDC_DATA = crate::Reg<ledc_data::LEDC_DATA_SPEC>;
97#[doc = "LEDC Data Register"]
98pub mod ledc_data;
99#[doc = "ledc_dma_ctrl (rw) register accessor: LEDC DMA Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ledc_dma_ctrl::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ledc_dma_ctrl::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ledc_dma_ctrl`] module"]
100pub type LEDC_DMA_CTRL = crate::Reg<ledc_dma_ctrl::LEDC_DMA_CTRL_SPEC>;
101#[doc = "LEDC DMA Control Register"]
102pub mod ledc_dma_ctrl;
103#[doc = "ledc_int_ctrl (rw) register accessor: LEDC Interrupt Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ledc_int_ctrl::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ledc_int_ctrl::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ledc_int_ctrl`] module"]
104pub type LEDC_INT_CTRL = crate::Reg<ledc_int_ctrl::LEDC_INT_CTRL_SPEC>;
105#[doc = "LEDC Interrupt Control Register"]
106pub mod ledc_int_ctrl;
107#[doc = "ledc_int_sts (rw) register accessor: LEDC Interrupt Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ledc_int_sts::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ledc_int_sts::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ledc_int_sts`] module"]
108pub type LEDC_INT_STS = crate::Reg<ledc_int_sts::LEDC_INT_STS_SPEC>;
109#[doc = "LEDC Interrupt Status Register"]
110pub mod ledc_int_sts;
111#[doc = "ledc_wait_time1_ctrl (rw) register accessor: LEDC Wait Time1 Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ledc_wait_time1_ctrl::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ledc_wait_time1_ctrl::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ledc_wait_time1_ctrl`] module"]
112pub type LEDC_WAIT_TIME1_CTRL = crate::Reg<ledc_wait_time1_ctrl::LEDC_WAIT_TIME1_CTRL_SPEC>;
113#[doc = "LEDC Wait Time1 Control Register"]
114pub mod ledc_wait_time1_ctrl;
115#[doc = "ledc_fifo_data (r) register accessor: LEDC FIFO Data Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ledc_fifo_data::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ledc_fifo_data`] module"]
116pub type LEDC_FIFO_DATA = crate::Reg<ledc_fifo_data::LEDC_FIFO_DATA_SPEC>;
117#[doc = "LEDC FIFO Data Register"]
118pub mod ledc_fifo_data;