Struct drone_cortexm::map::reg::scb::Icsr [−][src]
Provides software control of the NMI, PendSV, and SysTick exceptions, and provides interrupt status information.
Fields
nmipendset: Nmipendset<_T>
NMI set-pending bit.
pendsvset: Pendsvset<_T>
PendSV set-pending bit.
pendsvclr: Pendsvclr<_T>
PendSV clear-pending bit.
pendstset: Pendstset<_T>
SysTick exception set-pending bit.
pendstclr: Pendstclr<_T>
SysTick exception clear-pending bit.
isrpending: Isrpending<_T>
Interrupt pending flag, excluding NMI and Faults.
vectpending: Vectpending<_T>
Pending vector. Indicates the exception number of the highest priority pending enabled exception.
rettobase: Rettobase<_T>
Return to base level. Indicates whether there are preempted active exceptions.
vectactive: Vectactive<_T>
Active vector. Contains the active exception number.
Trait Implementations
impl<_T: Clone + RegTag> Clone for Reg<_T>
[src]
fn clone(&self) -> Reg<_T>
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<_T: Copy + RegTag> Copy for Reg<_T>
[src]
impl<_T: RegTag> RReg<_T> for Reg<_T>
[src]
pub fn load<'a>(&'a self) -> Self::Hold where
Self: RegRef<'a, T>,
[src]
Self: RegRef<'a, T>,
pub fn load_val(&self) -> Self::Val
[src]
pub fn load_bits(&self) -> <Self::Val as Bitfield>::Bits
[src]
pub fn as_ptr(&self) -> *const <Self::Val as Bitfield>::Bits
[src]
impl<_T: RegTag> Reg<_T> for Reg<_T>
[src]
type Val = Val
Opaque storage for register values. Read more
type UReg = Reg<Urt>
Corresponding unsynchronized register token.
type SReg = Reg<Srt>
Corresponding synchronized register token.
type CReg = Reg<Crt>
Corresponding copyable register token.
const ADDRESS: usize
[src]
const RESET: u32
[src]
unsafe fn val_from(bits: u32) -> Val
[src]
pub fn into_unsync(self) -> Self::UReg where
T: RegOwned,
[src]
T: RegOwned,
pub fn into_sync(self) -> Self::SReg where
T: RegOwned,
[src]
T: RegOwned,
pub fn into_copy(self) -> Self::CReg
[src]
pub fn as_sync(&self) -> &Self::SReg where
T: RegAtomic,
[src]
T: RegAtomic,
pub fn default_val(&self) -> Self::Val
[src]
impl<'a, _T> RegHold<'a, _T, Reg<_T>> for Hold<'a, _T> where
_T: RegTag,
[src]
_T: RegTag,
impl<'a, _T> RegRef<'a, _T> for Reg<_T> where
_T: RegTag + 'a,
[src]
_T: RegTag + 'a,
type Hold = Hold<'a, _T>
Exposed storage for register values. Read more
fn hold(&'a self, val: Self::Val) -> Self::Hold
[src]
pub fn default(&'a self) -> Self::Hold
[src]
impl<_T: RegTag> Token for Reg<_T>
[src]
impl<_T: RegTag> WReg<_T> for Reg<_T>
[src]
pub fn as_mut_ptr(&self) -> *mut <Self::Val as Bitfield>::Bits
[src]
impl<_T: RegTag> WoReg<_T> for Reg<_T>
[src]
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<R> CRwReg for R where
R: CRwReg + for<'a> RwRegAtomic<'a, Crt>,
[src]
R: CRwReg + for<'a> RwRegAtomic<'a, Crt>,
impl<R> CRwReg for R where
R: RwReg<Crt> + for<'a> WRegAtomic<'a, Crt> + Copy,
[src]
R: RwReg<Crt> + for<'a> WRegAtomic<'a, Crt> + Copy,
impl<R> CWoReg for R where
R: WoReg<Crt> + for<'a> WRegAtomic<'a, Crt> + Copy,
[src]
R: WoReg<Crt> + for<'a> WRegAtomic<'a, Crt> + Copy,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<R, T> RwReg<T> for R where
T: RegTag,
R: RReg<T> + WReg<T>,
[src]
T: RegTag,
R: RReg<T> + WReg<T>,
impl<'a, R> RwRegUnsync<'a> for R where
R: RReg<Urt> + WRegUnsync<'a> + RegRef<'a, Urt>,
[src]
R: RReg<Urt> + WRegUnsync<'a> + RegRef<'a, Urt>,
pub fn modify<F>(&'a mut self, f: F) where
F: for<'b> FnOnce(&'b mut <R as RegRef<'a, Urt>>::Hold) -> &'b mut <R as RegRef<'a, Urt>>::Hold,
[src]
F: for<'b> FnOnce(&'b mut <R as RegRef<'a, Urt>>::Hold) -> &'b mut <R as RegRef<'a, Urt>>::Hold,
pub fn modify_reg<F>(&'a mut self, f: F) where
F: for<'b> FnOnce(&'b R, &'b mut <R as Reg<Urt>>::Val),
[src]
F: for<'b> FnOnce(&'b R, &'b mut <R as Reg<Urt>>::Val),
impl<R> SRwReg for R where
R: SRwReg + for<'a> RwRegAtomic<'a, Srt>,
[src]
R: SRwReg + for<'a> RwRegAtomic<'a, Srt>,
impl<R> SRwReg for R where
R: RwReg<Srt> + for<'a> WRegAtomic<'a, Srt>,
[src]
R: RwReg<Srt> + for<'a> WRegAtomic<'a, Srt>,
impl<R> SWoReg for R where
R: WoReg<Srt> + for<'a> WRegAtomic<'a, Srt>,
[src]
R: WoReg<Srt> + for<'a> WRegAtomic<'a, Srt>,
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<R> URwReg for R where
R: RwReg<Urt> + for<'a> RwRegUnsync<'a>,
[src]
R: RwReg<Urt> + for<'a> RwRegUnsync<'a>,
impl<R> UWoReg for R where
R: WoReg<Urt> + for<'a> WRegUnsync<'a>,
[src]
R: WoReg<Urt> + for<'a> WRegUnsync<'a>,
impl<'a, R> WRegUnsync<'a> for R where
R: WReg<Urt> + RegRef<'a, Urt>,
[src]
R: WReg<Urt> + RegRef<'a, Urt>,
pub fn store<F>(&'a mut self, f: F) where
F: for<'b> FnOnce(&'b mut <R as RegRef<'a, Urt>>::Hold) -> &'b mut <R as RegRef<'a, Urt>>::Hold,
[src]
F: for<'b> FnOnce(&'b mut <R as RegRef<'a, Urt>>::Hold) -> &'b mut <R as RegRef<'a, Urt>>::Hold,
pub fn store_reg<F>(&'a mut self, f: F) where
F: for<'b> FnOnce(&'b R, &'b mut <R as Reg<Urt>>::Val),
[src]
F: for<'b> FnOnce(&'b R, &'b mut <R as Reg<Urt>>::Val),