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
#[doc = r" Register block"] #[repr(C)] pub struct RegisterBlock { #[doc = "0x00 - control register 1"] pub cr1: CR1, #[doc = "0x04 - control register 2"] pub cr2: CR2, _reserved0: [u8; 4usize], #[doc = "0x0c - DMA/Interrupt enable register"] pub dier: DIER, #[doc = "0x10 - status register"] pub sr: SR, #[doc = "0x14 - event generation register"] pub egr: EGR, _reserved1: [u8; 12usize], #[doc = "0x24 - counter"] pub cnt: CNT, #[doc = "0x28 - prescaler"] pub psc: PSC, #[doc = "0x2c - auto-reload register"] pub arr: ARR, } #[doc = "control register 1"] pub struct CR1 { register: ::vcell::VolatileCell<u32>, } #[doc = "control register 1"] pub mod cr1; #[doc = "control register 2"] pub struct CR2 { register: ::vcell::VolatileCell<u32>, } #[doc = "control register 2"] pub mod cr2; #[doc = "DMA/Interrupt enable register"] pub struct DIER { register: ::vcell::VolatileCell<u32>, } #[doc = "DMA/Interrupt enable register"] pub mod dier; #[doc = "status register"] pub struct SR { register: ::vcell::VolatileCell<u32>, } #[doc = "status register"] pub mod sr; #[doc = "event generation register"] pub struct EGR { register: ::vcell::VolatileCell<u32>, } #[doc = "event generation register"] pub mod egr; #[doc = "counter"] pub struct CNT { register: ::vcell::VolatileCell<u32>, } #[doc = "counter"] pub mod cnt; #[doc = "prescaler"] pub struct PSC { register: ::vcell::VolatileCell<u32>, } #[doc = "prescaler"] pub mod psc; #[doc = "auto-reload register"] pub struct ARR { register: ::vcell::VolatileCell<u32>, } #[doc = "auto-reload register"] pub mod arr;