atsamd21g/usb/device/
epstatusclr.rs
1#[doc = "Register `EPSTATUSCLR%s` writer"]
2pub type W = crate::W<EpstatusclrSpec>;
3#[doc = "Field `DTGLOUT` writer - Data Toggle OUT Clear"]
4pub type DtgloutW<'a, REG> = crate::BitWriter<'a, REG>;
5#[doc = "Field `DTGLIN` writer - Data Toggle IN Clear"]
6pub type DtglinW<'a, REG> = crate::BitWriter<'a, REG>;
7#[doc = "Field `CURBK` writer - Curren Bank Clear"]
8pub type CurbkW<'a, REG> = crate::BitWriter<'a, REG>;
9#[doc = "Field `STALLRQ0` writer - Stall 0 Request Clear"]
10pub type Stallrq0W<'a, REG> = crate::BitWriter<'a, REG>;
11#[doc = "Field `STALLRQ1` writer - Stall 1 Request Clear"]
12pub type Stallrq1W<'a, REG> = crate::BitWriter<'a, REG>;
13#[doc = "Field `BK0RDY` writer - Bank 0 Ready Clear"]
14pub type Bk0rdyW<'a, REG> = crate::BitWriter<'a, REG>;
15#[doc = "Field `BK1RDY` writer - Bank 1 Ready Clear"]
16pub type Bk1rdyW<'a, REG> = crate::BitWriter<'a, REG>;
17impl W {
18 #[doc = "Bit 0 - Data Toggle OUT Clear"]
19 #[inline(always)]
20 #[must_use]
21 pub fn dtglout(&mut self) -> DtgloutW<EpstatusclrSpec> {
22 DtgloutW::new(self, 0)
23 }
24 #[doc = "Bit 1 - Data Toggle IN Clear"]
25 #[inline(always)]
26 #[must_use]
27 pub fn dtglin(&mut self) -> DtglinW<EpstatusclrSpec> {
28 DtglinW::new(self, 1)
29 }
30 #[doc = "Bit 2 - Curren Bank Clear"]
31 #[inline(always)]
32 #[must_use]
33 pub fn curbk(&mut self) -> CurbkW<EpstatusclrSpec> {
34 CurbkW::new(self, 2)
35 }
36 #[doc = "Bit 4 - Stall 0 Request Clear"]
37 #[inline(always)]
38 #[must_use]
39 pub fn stallrq0(&mut self) -> Stallrq0W<EpstatusclrSpec> {
40 Stallrq0W::new(self, 4)
41 }
42 #[doc = "Bit 5 - Stall 1 Request Clear"]
43 #[inline(always)]
44 #[must_use]
45 pub fn stallrq1(&mut self) -> Stallrq1W<EpstatusclrSpec> {
46 Stallrq1W::new(self, 5)
47 }
48 #[doc = "Bit 6 - Bank 0 Ready Clear"]
49 #[inline(always)]
50 #[must_use]
51 pub fn bk0rdy(&mut self) -> Bk0rdyW<EpstatusclrSpec> {
52 Bk0rdyW::new(self, 6)
53 }
54 #[doc = "Bit 7 - Bank 1 Ready Clear"]
55 #[inline(always)]
56 #[must_use]
57 pub fn bk1rdy(&mut self) -> Bk1rdyW<EpstatusclrSpec> {
58 Bk1rdyW::new(self, 7)
59 }
60}
61#[doc = "DEVICE End Point Pipe Status Clear\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`epstatusclr::W`](W). See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
62pub struct EpstatusclrSpec;
63impl crate::RegisterSpec for EpstatusclrSpec {
64 type Ux = u8;
65}
66#[doc = "`write(|w| ..)` method takes [`epstatusclr::W`](W) writer structure"]
67impl crate::Writable for EpstatusclrSpec {
68 type Safety = crate::Unsafe;
69 const ZERO_TO_MODIFY_FIELDS_BITMAP: u8 = 0;
70 const ONE_TO_MODIFY_FIELDS_BITMAP: u8 = 0;
71}
72#[doc = "`reset()` method sets EPSTATUSCLR%s to value 0"]
73impl crate::Resettable for EpstatusclrSpec {
74 const RESET_VALUE: u8 = 0;
75}