1#[doc = "Register `DCXCNT` reader"]
2pub struct R(crate::R<DCXCNT_SPEC>);
3impl core::ops::Deref for R {
4type Target = crate::R<DCXCNT_SPEC>;
5#[inline(always)]
6fn deref(&self) -> &Self::Target {
7&self.0
8}
9}
10impl From<crate::R<DCXCNT_SPEC>> for R {
11#[inline(always)]
12fn from(reader: crate::R<DCXCNT_SPEC>) -> Self {
13 R(reader)
14 }
15}
16#[doc = "Register `DCXCNT` writer"]
17pub struct W(crate::W<DCXCNT_SPEC>);
18impl core::ops::Deref for W {
19type Target = crate::W<DCXCNT_SPEC>;
20#[inline(always)]
21fn deref(&self) -> &Self::Target {
22&self.0
23}
24}
25impl core::ops::DerefMut for W {
26#[inline(always)]
27fn deref_mut(&mut self) -> &mut Self::Target {
28&mut self.0
29}
30}
31impl From<crate::W<DCXCNT_SPEC>> for W {
32#[inline(always)]
33fn from(writer: crate::W<DCXCNT_SPEC>) -> Self {
34 W(writer)
35 }
36}
37#[doc = "Field `DCXCNT` reader - This register specifies the number of command bytes preceding the data bytes. The PSEL.DCX line will be low during transmission of command bytes and high during transmission of data bytes. Value 0xF indicates that all bytes are command bytes."]
38pub type DCXCNT_R = crate::FieldReader<u8, u8>;
39#[doc = "Field `DCXCNT` writer - This register specifies the number of command bytes preceding the data bytes. The PSEL.DCX line will be low during transmission of command bytes and high during transmission of data bytes. Value 0xF indicates that all bytes are command bytes."]
40pub type DCXCNT_W<'a, const O: u8> = crate::FieldWriter<'a, u32, DCXCNT_SPEC, u8, u8, 4, O>;
41impl R {
42#[doc = "Bits 0:3 - This register specifies the number of command bytes preceding the data bytes. The PSEL.DCX line will be low during transmission of command bytes and high during transmission of data bytes. Value 0xF indicates that all bytes are command bytes."]
43 #[inline(always)]
44pub fn dcxcnt(&self) -> DCXCNT_R {
45 DCXCNT_R::new((self.bits & 0x0f) as u8)
46 }
47}
48impl W {
49#[doc = "Bits 0:3 - This register specifies the number of command bytes preceding the data bytes. The PSEL.DCX line will be low during transmission of command bytes and high during transmission of data bytes. Value 0xF indicates that all bytes are command bytes."]
50 #[inline(always)]
51pub fn dcxcnt(&mut self) -> DCXCNT_W<0> {
52 DCXCNT_W::new(self)
53 }
54#[doc = "Writes raw bits to the register."]
55 #[inline(always)]
56pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
57self.0.bits(bits);
58self
59}
60}
61#[doc = "DCX configuration\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [dcxcnt](index.html) module"]
62pub struct DCXCNT_SPEC;
63impl crate::RegisterSpec for DCXCNT_SPEC {
64type Ux = u32;
65}
66#[doc = "`read()` method returns [dcxcnt::R](R) reader structure"]
67impl crate::Readable for DCXCNT_SPEC {
68type Reader = R;
69}
70#[doc = "`write(|w| ..)` method takes [dcxcnt::W](W) writer structure"]
71impl crate::Writable for DCXCNT_SPEC {
72type Writer = W;
73}
74#[doc = "`reset()` method sets DCXCNT to value 0"]
75impl crate::Resettable for DCXCNT_SPEC {
76#[inline(always)]
77fn reset_value() -> Self::Ux {
780
79}
80}