Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ESP32S3: Make an array out of touch_pad #273

Merged
merged 3 commits into from
Aug 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
160 changes: 13 additions & 147 deletions esp32s3/src/rtc_io.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,21 +14,7 @@ pub struct RegisterBlock {
rtc_gpio_in: RTC_GPIO_IN,
pin: [PIN; 22],
rtc_debug_sel: RTC_DEBUG_SEL,
touch_pad0: TOUCH_PAD0,
touch_pad1: TOUCH_PAD1,
touch_pad2: TOUCH_PAD2,
touch_pad3: TOUCH_PAD3,
touch_pad4: TOUCH_PAD4,
touch_pad5: TOUCH_PAD5,
touch_pad6: TOUCH_PAD6,
touch_pad7: TOUCH_PAD7,
touch_pad8: TOUCH_PAD8,
touch_pad9: TOUCH_PAD9,
touch_pad10: TOUCH_PAD10,
touch_pad11: TOUCH_PAD11,
touch_pad12: TOUCH_PAD12,
touch_pad13: TOUCH_PAD13,
touch_pad14: TOUCH_PAD14,
touch_pad: [TOUCH_PAD; 15],
xtal_32p_pad: XTAL_32P_PAD,
xtal_32n_pad: XTAL_32N_PAD,
pad_dac1: PAD_DAC1,
Expand All @@ -40,7 +26,7 @@ pub struct RegisterBlock {
xtl_ext_ctr: XTL_EXT_CTR,
sar_i2c_io: SAR_I2C_IO,
touch_ctrl: TOUCH_CTRL,
_reserved38: [u8; 0x0110],
_reserved24: [u8; 0x0110],
date: DATE,
}
impl RegisterBlock {
Expand Down Expand Up @@ -110,80 +96,16 @@ impl RegisterBlock {
pub const fn rtc_debug_sel(&self) -> &RTC_DEBUG_SEL {
&self.rtc_debug_sel
}
#[doc = "0x84 - configure RTC PAD0"]
#[doc = "0x84..0xc0 - configure RTC PAD%s"]
#[inline(always)]
pub const fn touch_pad0(&self) -> &TOUCH_PAD0 {
&self.touch_pad0
pub const fn touch_pad(&self, n: usize) -> &TOUCH_PAD {
&self.touch_pad[n]
}
#[doc = "0x88 - configure RTC PAD1"]
#[inline(always)]
pub const fn touch_pad1(&self) -> &TOUCH_PAD1 {
&self.touch_pad1
}
#[doc = "0x8c - configure RTC PAD2"]
#[inline(always)]
pub const fn touch_pad2(&self) -> &TOUCH_PAD2 {
&self.touch_pad2
}
#[doc = "0x90 - configure RTC PAD3"]
#[inline(always)]
pub const fn touch_pad3(&self) -> &TOUCH_PAD3 {
&self.touch_pad3
}
#[doc = "0x94 - configure RTC PAD4"]
#[inline(always)]
pub const fn touch_pad4(&self) -> &TOUCH_PAD4 {
&self.touch_pad4
}
#[doc = "0x98 - configure RTC PAD5"]
#[inline(always)]
pub const fn touch_pad5(&self) -> &TOUCH_PAD5 {
&self.touch_pad5
}
#[doc = "0x9c - configure RTC PAD6"]
#[inline(always)]
pub const fn touch_pad6(&self) -> &TOUCH_PAD6 {
&self.touch_pad6
}
#[doc = "0xa0 - configure RTC PAD7"]
#[inline(always)]
pub const fn touch_pad7(&self) -> &TOUCH_PAD7 {
&self.touch_pad7
}
#[doc = "0xa4 - configure RTC PAD8"]
#[inline(always)]
pub const fn touch_pad8(&self) -> &TOUCH_PAD8 {
&self.touch_pad8
}
#[doc = "0xa8 - configure RTC PAD9"]
#[inline(always)]
pub const fn touch_pad9(&self) -> &TOUCH_PAD9 {
&self.touch_pad9
}
#[doc = "0xac - configure RTC PAD10"]
#[inline(always)]
pub const fn touch_pad10(&self) -> &TOUCH_PAD10 {
&self.touch_pad10
}
#[doc = "0xb0 - configure RTC PAD11"]
#[inline(always)]
pub const fn touch_pad11(&self) -> &TOUCH_PAD11 {
&self.touch_pad11
}
#[doc = "0xb4 - configure RTC PAD12"]
#[inline(always)]
pub const fn touch_pad12(&self) -> &TOUCH_PAD12 {
&self.touch_pad12
}
#[doc = "0xb8 - configure RTC PAD13"]
#[inline(always)]
pub const fn touch_pad13(&self) -> &TOUCH_PAD13 {
&self.touch_pad13
}
#[doc = "0xbc - configure RTC PAD14"]
#[doc = "Iterator for array of:"]
#[doc = "0x84..0xc0 - configure RTC PAD%s"]
#[inline(always)]
pub const fn touch_pad14(&self) -> &TOUCH_PAD14 {
&self.touch_pad14
pub fn touch_pad_iter(&self) -> impl Iterator<Item = &TOUCH_PAD> {
self.touch_pad.iter()
}
#[doc = "0xc0 - configure RTC PAD15"]
#[inline(always)]
Expand Down Expand Up @@ -294,66 +216,10 @@ pub mod pin;
pub type RTC_DEBUG_SEL = crate::Reg<rtc_debug_sel::RTC_DEBUG_SEL_SPEC>;
#[doc = "configure rtc debug"]
pub mod rtc_debug_sel;
#[doc = "TOUCH_PAD0 (rw) register accessor: configure RTC PAD0\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad0`] module"]
pub type TOUCH_PAD0 = crate::Reg<touch_pad0::TOUCH_PAD0_SPEC>;
#[doc = "configure RTC PAD0"]
pub mod touch_pad0;
#[doc = "TOUCH_PAD1 (rw) register accessor: configure RTC PAD1\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad1`] module"]
pub type TOUCH_PAD1 = crate::Reg<touch_pad1::TOUCH_PAD1_SPEC>;
#[doc = "configure RTC PAD1"]
pub mod touch_pad1;
#[doc = "TOUCH_PAD2 (rw) register accessor: configure RTC PAD2\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad2`] module"]
pub type TOUCH_PAD2 = crate::Reg<touch_pad2::TOUCH_PAD2_SPEC>;
#[doc = "configure RTC PAD2"]
pub mod touch_pad2;
#[doc = "TOUCH_PAD3 (rw) register accessor: configure RTC PAD3\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad3`] module"]
pub type TOUCH_PAD3 = crate::Reg<touch_pad3::TOUCH_PAD3_SPEC>;
#[doc = "configure RTC PAD3"]
pub mod touch_pad3;
#[doc = "TOUCH_PAD4 (rw) register accessor: configure RTC PAD4\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad4`] module"]
pub type TOUCH_PAD4 = crate::Reg<touch_pad4::TOUCH_PAD4_SPEC>;
#[doc = "configure RTC PAD4"]
pub mod touch_pad4;
#[doc = "TOUCH_PAD5 (rw) register accessor: configure RTC PAD5\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad5`] module"]
pub type TOUCH_PAD5 = crate::Reg<touch_pad5::TOUCH_PAD5_SPEC>;
#[doc = "configure RTC PAD5"]
pub mod touch_pad5;
#[doc = "TOUCH_PAD6 (rw) register accessor: configure RTC PAD6\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad6`] module"]
pub type TOUCH_PAD6 = crate::Reg<touch_pad6::TOUCH_PAD6_SPEC>;
#[doc = "configure RTC PAD6"]
pub mod touch_pad6;
#[doc = "TOUCH_PAD7 (rw) register accessor: configure RTC PAD7\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad7`] module"]
pub type TOUCH_PAD7 = crate::Reg<touch_pad7::TOUCH_PAD7_SPEC>;
#[doc = "configure RTC PAD7"]
pub mod touch_pad7;
#[doc = "TOUCH_PAD8 (rw) register accessor: configure RTC PAD8\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad8`] module"]
pub type TOUCH_PAD8 = crate::Reg<touch_pad8::TOUCH_PAD8_SPEC>;
#[doc = "configure RTC PAD8"]
pub mod touch_pad8;
#[doc = "TOUCH_PAD9 (rw) register accessor: configure RTC PAD9\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad9`] module"]
pub type TOUCH_PAD9 = crate::Reg<touch_pad9::TOUCH_PAD9_SPEC>;
#[doc = "configure RTC PAD9"]
pub mod touch_pad9;
#[doc = "TOUCH_PAD10 (rw) register accessor: configure RTC PAD10\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad10`] module"]
pub type TOUCH_PAD10 = crate::Reg<touch_pad10::TOUCH_PAD10_SPEC>;
#[doc = "configure RTC PAD10"]
pub mod touch_pad10;
#[doc = "TOUCH_PAD11 (rw) register accessor: configure RTC PAD11\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad11`] module"]
pub type TOUCH_PAD11 = crate::Reg<touch_pad11::TOUCH_PAD11_SPEC>;
#[doc = "configure RTC PAD11"]
pub mod touch_pad11;
#[doc = "TOUCH_PAD12 (rw) register accessor: configure RTC PAD12\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad12`] module"]
pub type TOUCH_PAD12 = crate::Reg<touch_pad12::TOUCH_PAD12_SPEC>;
#[doc = "configure RTC PAD12"]
pub mod touch_pad12;
#[doc = "TOUCH_PAD13 (rw) register accessor: configure RTC PAD13\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad13`] module"]
pub type TOUCH_PAD13 = crate::Reg<touch_pad13::TOUCH_PAD13_SPEC>;
#[doc = "configure RTC PAD13"]
pub mod touch_pad13;
#[doc = "TOUCH_PAD14 (rw) register accessor: configure RTC PAD14\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad14`] module"]
pub type TOUCH_PAD14 = crate::Reg<touch_pad14::TOUCH_PAD14_SPEC>;
#[doc = "configure RTC PAD14"]
pub mod touch_pad14;
#[doc = "TOUCH_PAD (rw) register accessor: configure RTC PAD%s\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@touch_pad`] module"]
pub type TOUCH_PAD = crate::Reg<touch_pad::TOUCH_PAD_SPEC>;
#[doc = "configure RTC PAD%s"]
pub mod touch_pad;
#[doc = "XTAL_32P_PAD (rw) register accessor: configure RTC PAD15\n\nYou can [`read`](crate::Reg::read) this register and get [`xtal_32p_pad::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`xtal_32p_pad::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@xtal_32p_pad`] module"]
pub type XTAL_32P_PAD = crate::Reg<xtal_32p_pad::XTAL_32P_PAD_SPEC>;
#[doc = "configure RTC PAD15"]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#[doc = "Register `TOUCH_PAD0` reader"]
pub type R = crate::R<TOUCH_PAD0_SPEC>;
#[doc = "Register `TOUCH_PAD0` writer"]
pub type W = crate::W<TOUCH_PAD0_SPEC>;
#[doc = "Register `TOUCH_PAD%s` reader"]
pub type R = crate::R<TOUCH_PAD_SPEC>;
#[doc = "Register `TOUCH_PAD%s` writer"]
pub type W = crate::W<TOUCH_PAD_SPEC>;
#[doc = "Field `FUN_IE` reader - input enable in work mode"]
pub type FUN_IE_R = crate::BitReader;
#[doc = "Field `FUN_IE` writer - input enable in work mode"]
Expand Down Expand Up @@ -115,7 +115,7 @@ impl R {
#[cfg(feature = "impl-register-debug")]
impl core::fmt::Debug for R {
fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
f.debug_struct("TOUCH_PAD0")
f.debug_struct("TOUCH_PAD")
.field("fun_ie", &self.fun_ie())
.field("slp_oe", &self.slp_oe())
.field("slp_ie", &self.slp_ie())
Expand All @@ -135,90 +135,90 @@ impl W {
#[doc = "Bit 13 - input enable in work mode"]
#[inline(always)]
#[must_use]
pub fn fun_ie(&mut self) -> FUN_IE_W<TOUCH_PAD0_SPEC> {
pub fn fun_ie(&mut self) -> FUN_IE_W<TOUCH_PAD_SPEC> {
FUN_IE_W::new(self, 13)
}
#[doc = "Bit 14 - output enable in sleep mode"]
#[inline(always)]
#[must_use]
pub fn slp_oe(&mut self) -> SLP_OE_W<TOUCH_PAD0_SPEC> {
pub fn slp_oe(&mut self) -> SLP_OE_W<TOUCH_PAD_SPEC> {
SLP_OE_W::new(self, 14)
}
#[doc = "Bit 15 - input enable in sleep mode"]
#[inline(always)]
#[must_use]
pub fn slp_ie(&mut self) -> SLP_IE_W<TOUCH_PAD0_SPEC> {
pub fn slp_ie(&mut self) -> SLP_IE_W<TOUCH_PAD_SPEC> {
SLP_IE_W::new(self, 15)
}
#[doc = "Bit 16 - 1: enable sleep mode during sleep,0: no sleep mode"]
#[inline(always)]
#[must_use]
pub fn slp_sel(&mut self) -> SLP_SEL_W<TOUCH_PAD0_SPEC> {
pub fn slp_sel(&mut self) -> SLP_SEL_W<TOUCH_PAD_SPEC> {
SLP_SEL_W::new(self, 16)
}
#[doc = "Bits 17:18 - function sel"]
#[inline(always)]
#[must_use]
pub fn fun_sel(&mut self) -> FUN_SEL_W<TOUCH_PAD0_SPEC> {
pub fn fun_sel(&mut self) -> FUN_SEL_W<TOUCH_PAD_SPEC> {
FUN_SEL_W::new(self, 17)
}
#[doc = "Bit 19 - 1: use RTC GPIO,0: use digital GPIO"]
#[inline(always)]
#[must_use]
pub fn mux_sel(&mut self) -> MUX_SEL_W<TOUCH_PAD0_SPEC> {
pub fn mux_sel(&mut self) -> MUX_SEL_W<TOUCH_PAD_SPEC> {
MUX_SEL_W::new(self, 19)
}
#[doc = "Bit 20 - TOUCH_XPD"]
#[inline(always)]
#[must_use]
pub fn xpd(&mut self) -> XPD_W<TOUCH_PAD0_SPEC> {
pub fn xpd(&mut self) -> XPD_W<TOUCH_PAD_SPEC> {
XPD_W::new(self, 20)
}
#[doc = "Bit 21 - TOUCH_TIE_OPT"]
#[inline(always)]
#[must_use]
pub fn tie_opt(&mut self) -> TIE_OPT_W<TOUCH_PAD0_SPEC> {
pub fn tie_opt(&mut self) -> TIE_OPT_W<TOUCH_PAD_SPEC> {
TIE_OPT_W::new(self, 21)
}
#[doc = "Bit 22 - TOUCH_START"]
#[inline(always)]
#[must_use]
pub fn start(&mut self) -> START_W<TOUCH_PAD0_SPEC> {
pub fn start(&mut self) -> START_W<TOUCH_PAD_SPEC> {
START_W::new(self, 22)
}
#[doc = "Bit 27 - RUE"]
#[inline(always)]
#[must_use]
pub fn rue(&mut self) -> RUE_W<TOUCH_PAD0_SPEC> {
pub fn rue(&mut self) -> RUE_W<TOUCH_PAD_SPEC> {
RUE_W::new(self, 27)
}
#[doc = "Bit 28 - RDE"]
#[inline(always)]
#[must_use]
pub fn rde(&mut self) -> RDE_W<TOUCH_PAD0_SPEC> {
pub fn rde(&mut self) -> RDE_W<TOUCH_PAD_SPEC> {
RDE_W::new(self, 28)
}
#[doc = "Bits 29:30 - DRV"]
#[inline(always)]
#[must_use]
pub fn drv(&mut self) -> DRV_W<TOUCH_PAD0_SPEC> {
pub fn drv(&mut self) -> DRV_W<TOUCH_PAD_SPEC> {
DRV_W::new(self, 29)
}
}
#[doc = "configure RTC PAD0\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad0::R`](R). You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad0::W`](W). You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
pub struct TOUCH_PAD0_SPEC;
impl crate::RegisterSpec for TOUCH_PAD0_SPEC {
#[doc = "configure RTC PAD%s\n\nYou can [`read`](crate::Reg::read) this register and get [`touch_pad::R`](R). You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`touch_pad::W`](W). You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
pub struct TOUCH_PAD_SPEC;
impl crate::RegisterSpec for TOUCH_PAD_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [`touch_pad0::R`](R) reader structure"]
impl crate::Readable for TOUCH_PAD0_SPEC {}
#[doc = "`write(|w| ..)` method takes [`touch_pad0::W`](W) writer structure"]
impl crate::Writable for TOUCH_PAD0_SPEC {
#[doc = "`read()` method returns [`touch_pad::R`](R) reader structure"]
impl crate::Readable for TOUCH_PAD_SPEC {}
#[doc = "`write(|w| ..)` method takes [`touch_pad::W`](W) writer structure"]
impl crate::Writable for TOUCH_PAD_SPEC {
type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
}
#[doc = "`reset()` method sets TOUCH_PAD0 to value 0x5000_0000"]
impl crate::Resettable for TOUCH_PAD0_SPEC {
#[doc = "`reset()` method sets TOUCH_PAD%s to value 0x5000_0000"]
impl crate::Resettable for TOUCH_PAD_SPEC {
const RESET_VALUE: u32 = 0x5000_0000;
}
Loading