atsams70j21/afec0/
afec_lcdr.rs1#[doc = "Register `AFEC_LCDR` reader"]
2pub struct R(crate::R<AFEC_LCDR_SPEC>);
3impl core::ops::Deref for R {
4 type Target = crate::R<AFEC_LCDR_SPEC>;
5 #[inline(always)]
6 fn deref(&self) -> &Self::Target {
7 &self.0
8 }
9}
10impl From<crate::R<AFEC_LCDR_SPEC>> for R {
11 #[inline(always)]
12 fn from(reader: crate::R<AFEC_LCDR_SPEC>) -> Self {
13 R(reader)
14 }
15}
16#[doc = "Field `LDATA` reader - Last Data Converted"]
17pub struct LDATA_R(crate::FieldReader<u16, u16>);
18impl LDATA_R {
19 #[inline(always)]
20 pub(crate) fn new(bits: u16) -> Self {
21 LDATA_R(crate::FieldReader::new(bits))
22 }
23}
24impl core::ops::Deref for LDATA_R {
25 type Target = crate::FieldReader<u16, u16>;
26 #[inline(always)]
27 fn deref(&self) -> &Self::Target {
28 &self.0
29 }
30}
31#[doc = "Field `CHNB` reader - Channel Number"]
32pub struct CHNB_R(crate::FieldReader<u8, u8>);
33impl CHNB_R {
34 #[inline(always)]
35 pub(crate) fn new(bits: u8) -> Self {
36 CHNB_R(crate::FieldReader::new(bits))
37 }
38}
39impl core::ops::Deref for CHNB_R {
40 type Target = crate::FieldReader<u8, u8>;
41 #[inline(always)]
42 fn deref(&self) -> &Self::Target {
43 &self.0
44 }
45}
46impl R {
47 #[doc = "Bits 0:15 - Last Data Converted"]
48 #[inline(always)]
49 pub fn ldata(&self) -> LDATA_R {
50 LDATA_R::new((self.bits & 0xffff) as u16)
51 }
52 #[doc = "Bits 24:27 - Channel Number"]
53 #[inline(always)]
54 pub fn chnb(&self) -> CHNB_R {
55 CHNB_R::new(((self.bits >> 24) & 0x0f) as u8)
56 }
57}
58#[doc = "AFEC Last Converted Data Register\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [afec_lcdr](index.html) module"]
59pub struct AFEC_LCDR_SPEC;
60impl crate::RegisterSpec for AFEC_LCDR_SPEC {
61 type Ux = u32;
62}
63#[doc = "`read()` method returns [afec_lcdr::R](R) reader structure"]
64impl crate::Readable for AFEC_LCDR_SPEC {
65 type Reader = R;
66}
67#[doc = "`reset()` method sets AFEC_LCDR to value 0"]
68impl crate::Resettable for AFEC_LCDR_SPEC {
69 #[inline(always)]
70 fn reset_value() -> Self::Ux {
71 0
72 }
73}