atsamd51g/wdt/
clear.rs
1#[doc = "Register `CLEAR` writer"]
2pub type W = crate::W<ClearSpec>;
3#[doc = "Watchdog Clear\n\nValue on reset: 0"]
4#[derive(Clone, Copy, Debug, PartialEq, Eq)]
5#[repr(u8)]
6pub enum Clearselect {
7 #[doc = "165: Clear Key"]
8 Key = 165,
9}
10impl From<Clearselect> for u8 {
11 #[inline(always)]
12 fn from(variant: Clearselect) -> Self {
13 variant as _
14 }
15}
16impl crate::FieldSpec for Clearselect {
17 type Ux = u8;
18}
19impl crate::IsEnum for Clearselect {}
20#[doc = "Field `CLEAR` writer - Watchdog Clear"]
21pub type ClearW<'a, REG> = crate::FieldWriter<'a, REG, 8, Clearselect>;
22impl<'a, REG> ClearW<'a, REG>
23where
24 REG: crate::Writable + crate::RegisterSpec,
25 REG::Ux: From<u8>,
26{
27 #[doc = "Clear Key"]
28 #[inline(always)]
29 pub fn key(self) -> &'a mut crate::W<REG> {
30 self.variant(Clearselect::Key)
31 }
32}
33impl W {
34 #[doc = "Bits 0:7 - Watchdog Clear"]
35 #[inline(always)]
36 #[must_use]
37 pub fn clear(&mut self) -> ClearW<ClearSpec> {
38 ClearW::new(self, 0)
39 }
40}
41#[doc = "Clear\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`clear::W`](W). See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
42pub struct ClearSpec;
43impl crate::RegisterSpec for ClearSpec {
44 type Ux = u8;
45}
46#[doc = "`write(|w| ..)` method takes [`clear::W`](W) writer structure"]
47impl crate::Writable for ClearSpec {
48 type Safety = crate::Unsafe;
49 const ZERO_TO_MODIFY_FIELDS_BITMAP: u8 = 0;
50 const ONE_TO_MODIFY_FIELDS_BITMAP: u8 = 0;
51}
52#[doc = "`reset()` method sets CLEAR to value 0"]
53impl crate::Resettable for ClearSpec {
54 const RESET_VALUE: u8 = 0;
55}