#[non_exhaustive]pub struct Cpu {Show 16 fields
pub name: String,
pub revision: String,
pub endian: Endian,
pub mpu_present: bool,
pub fpu_present: bool,
pub fpu_double_precision: Option<bool>,
pub dsp_present: Option<bool>,
pub icache_present: Option<bool>,
pub dcache_present: Option<bool>,
pub itcm_present: Option<bool>,
pub dtcm_present: Option<bool>,
pub vtor_present: Option<bool>,
pub nvic_priority_bits: u32,
pub has_vendor_systick: bool,
pub device_num_interrupts: Option<u32>,
pub sau_num_regions: Option<u32>,
}
Expand description
CPU describes the processor included in the microcontroller device.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.name: String
Processor architecture
revision: String
Define the HW revision of the processor
endian: Endian
Define the endianness of the processor
mpu_present: bool
Indicate whether the processor is equipped with a memory protection unit (MPU)
fpu_present: bool
Indicate whether the processor is equipped with a hardware floating point unit (FPU)
fpu_double_precision: Option<bool>
Indicate whether the processor is equipped with a double precision floating point unit.
This element is valid only when fpu_present
is set to true
dsp_present: Option<bool>
Indicates whether the processor implements the optional SIMD DSP extensions (DSP)
icache_present: Option<bool>
Indicate whether the processor has an instruction cache
dcache_present: Option<bool>
Indicate whether the processor has a data cache
itcm_present: Option<bool>
Indicate whether the processor has an instruction tightly coupled memory
dtcm_present: Option<bool>
Indicate whether the processor has a data tightly coupled memory
vtor_present: Option<bool>
Indicate whether the Vector Table Offset Register (VTOR) is implemented. If not specified, then VTOR is assumed to be present
nvic_priority_bits: u32
Define the number of bits available in the Nested Vectored Interrupt Controller (NVIC) for configuring priority
has_vendor_systick: bool
Indicate whether the processor implements a vendor-specific System Tick Timer
device_num_interrupts: Option<u32>
Add 1 to the highest interrupt number and specify this number in here
sau_num_regions: Option<u32>
Indicate the amount of regions in the Security Attribution Unit (SAU)
Implementations§
source§impl Cpu
impl Cpu
sourcepub fn builder() -> CpuBuilder
pub fn builder() -> CpuBuilder
Make a builder for Cpu
sourcepub fn modify_from(
&mut self,
builder: CpuBuilder,
lvl: ValidateLevel
) -> Result<(), SvdError>
pub fn modify_from( &mut self, builder: CpuBuilder, lvl: ValidateLevel ) -> Result<(), SvdError>
sourcepub fn is_cortex_m(&self) -> bool
pub fn is_cortex_m(&self) -> bool
Check if the Cpu
is a Cortex-M