Skip to main content

autd3_cpu_wire/payload/
config_mod.rs

1use zerocopy::little_endian::{U16, U32};
2use zerocopy::{FromBytes, Immutable, IntoBytes, KnownLayout, Unaligned};
3
4#[derive(FromBytes, IntoBytes, KnownLayout, Immutable, Unaligned)]
5#[repr(C)]
6pub struct ConfigModPayload {
7    pub bank: u8,
8    pub reserved: u8,
9    pub divider: U16,
10    pub size: U32,
11    pub rep: U16,
12}
13
14const _: () = assert!(core::mem::offset_of!(ConfigModPayload, bank) == 0);
15const _: () = assert!(core::mem::offset_of!(ConfigModPayload, divider) == 2);
16const _: () = assert!(core::mem::offset_of!(ConfigModPayload, size) == 4);
17const _: () = assert!(core::mem::offset_of!(ConfigModPayload, rep) == 8);
18const _: () = assert!(core::mem::size_of::<ConfigModPayload>() == 10);