1#[doc = "Register `BYTCNT` reader"]
2pub type R = crate::R<BYTCNT_SPEC>;
3#[doc = "Register `BYTCNT` writer"]
4pub type W = crate::W<BYTCNT_SPEC>;
5#[doc = "Field `BYTE_COUNT` reader - Number of bytes to be transferred, should be an integral multiple of Block Size for block transfers. For data transfers of undefined byte lengths, byte count should be set to 0. When byte count is set to 0, it is the responsibility of host to explicitly send stop/abort command to terminate data transfer."]
6pub type BYTE_COUNT_R = crate::FieldReader<u32>;
7#[doc = "Field `BYTE_COUNT` writer - Number of bytes to be transferred, should be an integral multiple of Block Size for block transfers. For data transfers of undefined byte lengths, byte count should be set to 0. When byte count is set to 0, it is the responsibility of host to explicitly send stop/abort command to terminate data transfer."]
8pub type BYTE_COUNT_W<'a, REG> = crate::FieldWriter<'a, REG, 32, u32>;
9impl R {
10 #[doc = "Bits 0:31 - Number of bytes to be transferred, should be an integral multiple of Block Size for block transfers. For data transfers of undefined byte lengths, byte count should be set to 0. When byte count is set to 0, it is the responsibility of host to explicitly send stop/abort command to terminate data transfer."]
11 #[inline(always)]
12 pub fn byte_count(&self) -> BYTE_COUNT_R {
13 BYTE_COUNT_R::new(self.bits)
14 }
15}
16#[cfg(feature = "impl-register-debug")]
17impl core::fmt::Debug for R {
18 fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
19 f.debug_struct("BYTCNT")
20 .field("byte_count", &self.byte_count())
21 .finish()
22 }
23}
24impl W {
25 #[doc = "Bits 0:31 - Number of bytes to be transferred, should be an integral multiple of Block Size for block transfers. For data transfers of undefined byte lengths, byte count should be set to 0. When byte count is set to 0, it is the responsibility of host to explicitly send stop/abort command to terminate data transfer."]
26 #[inline(always)]
27 pub fn byte_count(&mut self) -> BYTE_COUNT_W<BYTCNT_SPEC> {
28 BYTE_COUNT_W::new(self, 0)
29 }
30}
31#[doc = "Data transfer length configuration register\n\nYou can [`read`](crate::Reg::read) this register and get [`bytcnt::R`](R). You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`bytcnt::W`](W). You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
32pub struct BYTCNT_SPEC;
33impl crate::RegisterSpec for BYTCNT_SPEC {
34 type Ux = u32;
35}
36#[doc = "`read()` method returns [`bytcnt::R`](R) reader structure"]
37impl crate::Readable for BYTCNT_SPEC {}
38#[doc = "`write(|w| ..)` method takes [`bytcnt::W`](W) writer structure"]
39impl crate::Writable for BYTCNT_SPEC {
40 type Safety = crate::Unsafe;
41 const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
42 const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
43}
44#[doc = "`reset()` method sets BYTCNT to value 0x0200"]
45impl crate::Resettable for BYTCNT_SPEC {
46 const RESET_VALUE: u32 = 0x0200;
47}