#[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
sourceimpl 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
Trait Implementations
sourceimpl From<Cpu> for CpuBuilder
impl From<Cpu> for CpuBuilder
impl StructuralPartialEq for Cpu
Auto Trait Implementations
impl RefUnwindSafe for Cpu
impl Send for Cpu
impl Sync for Cpu
impl Unpin for Cpu
impl UnwindSafe for Cpu
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more