1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
#[doc = r" Register block"] #[repr(C)] pub struct RegisterBlock { #[doc = "0x00 - Control Register"] pub ctrl: CTRL, #[doc = "0x04 - Command Register"] pub cmd: CMD, #[doc = "0x08 - Status Register"] pub status: STATUS, #[doc = "0x0c - Counter Value Register"] pub cnt: CNT, #[doc = "0x10 - Top Value Register"] pub top: TOP, #[doc = "0x14 - Top Value Buffer Register"] pub topb: TOPB, #[doc = "0x18 - Interrupt Flag Register"] pub if_: IF, #[doc = "0x1c - Interrupt Flag Set Register"] pub ifs: IFS, #[doc = "0x20 - Interrupt Flag Clear Register"] pub ifc: IFC, #[doc = "0x24 - Interrupt Enable Register"] pub ien: IEN, _reserved0: [u8; 4usize], #[doc = "0x2c - I/O Routing Location Register"] pub routeloc0: ROUTELOC0, _reserved1: [u8; 16usize], #[doc = "0x40 - Freeze Register"] pub freeze: FREEZE, #[doc = "0x44 - Synchronization Busy Register"] pub syncbusy: SYNCBUSY, _reserved2: [u8; 28usize], #[doc = "0x64 - Auxiliary Counter Value Register"] pub auxcnt: AUXCNT, #[doc = "0x68 - PCNT Input Register"] pub input: INPUT, #[doc = "0x6c - Oversampling Config Register"] pub ovscfg: OVSCFG, } #[doc = "Control Register"] pub struct CTRL { register: ::vcell::VolatileCell<u32>, } #[doc = "Control Register"] pub mod ctrl; #[doc = "Command Register"] pub struct CMD { register: ::vcell::VolatileCell<u32>, } #[doc = "Command Register"] pub mod cmd; #[doc = "Status Register"] pub struct STATUS { register: ::vcell::VolatileCell<u32>, } #[doc = "Status Register"] pub mod status; #[doc = "Counter Value Register"] pub struct CNT { register: ::vcell::VolatileCell<u32>, } #[doc = "Counter Value Register"] pub mod cnt; #[doc = "Top Value Register"] pub struct TOP { register: ::vcell::VolatileCell<u32>, } #[doc = "Top Value Register"] pub mod top; #[doc = "Top Value Buffer Register"] pub struct TOPB { register: ::vcell::VolatileCell<u32>, } #[doc = "Top Value Buffer Register"] pub mod topb; #[doc = "Interrupt Flag Register"] pub struct IF { register: ::vcell::VolatileCell<u32>, } #[doc = "Interrupt Flag Register"] pub mod if_; #[doc = "Interrupt Flag Set Register"] pub struct IFS { register: ::vcell::VolatileCell<u32>, } #[doc = "Interrupt Flag Set Register"] pub mod ifs; #[doc = "Interrupt Flag Clear Register"] pub struct IFC { register: ::vcell::VolatileCell<u32>, } #[doc = "Interrupt Flag Clear Register"] pub mod ifc; #[doc = "Interrupt Enable Register"] pub struct IEN { register: ::vcell::VolatileCell<u32>, } #[doc = "Interrupt Enable Register"] pub mod ien; #[doc = "I/O Routing Location Register"] pub struct ROUTELOC0 { register: ::vcell::VolatileCell<u32>, } #[doc = "I/O Routing Location Register"] pub mod routeloc0; #[doc = "Freeze Register"] pub struct FREEZE { register: ::vcell::VolatileCell<u32>, } #[doc = "Freeze Register"] pub mod freeze; #[doc = "Synchronization Busy Register"] pub struct SYNCBUSY { register: ::vcell::VolatileCell<u32>, } #[doc = "Synchronization Busy Register"] pub mod syncbusy; #[doc = "Auxiliary Counter Value Register"] pub struct AUXCNT { register: ::vcell::VolatileCell<u32>, } #[doc = "Auxiliary Counter Value Register"] pub mod auxcnt; #[doc = "PCNT Input Register"] pub struct INPUT { register: ::vcell::VolatileCell<u32>, } #[doc = "PCNT Input Register"] pub mod input; #[doc = "Oversampling Config Register"] pub struct OVSCFG { register: ::vcell::VolatileCell<u32>, } #[doc = "Oversampling Config Register"] pub mod ovscfg;