pub struct DebugAssist<'d> { /* private fields */ }
unstable
only.Expand description
The debug assist driver instance.
Implementations§
Source§impl<'d> DebugAssist<'d>
impl<'d> DebugAssist<'d>
Sourcepub fn new(debug_assist: impl Peripheral<P = ASSIST_DEBUG> + 'd) -> Self
pub fn new(debug_assist: impl Peripheral<P = ASSIST_DEBUG> + 'd) -> Self
Create a new instance in crate::Blocking mode.
Sourcepub fn set_interrupt_handler(&mut self, handler: InterruptHandler)
pub fn set_interrupt_handler(&mut self, handler: InterruptHandler)
Register an interrupt handler for the Debug Assist module.
Note that this will replace any previously registered interrupt handlers.
§Stability
This API is marked as unstable and is only available when the unstable
crate feature is enabled. This comes with no stability guarantees, and could be changed
or removed at any time.
Source§impl DebugAssist<'_>
impl DebugAssist<'_>
Sourcepub fn enable_sp_monitor(&mut self, lower_bound: u32, upper_bound: u32)
pub fn enable_sp_monitor(&mut self, lower_bound: u32, upper_bound: u32)
Enable SP monitoring on main core. When the SP exceeds the
lower_bound
or upper_bound
threshold, the module will record the PC
pointer and generate an interrupt.
Sourcepub fn disable_sp_monitor(&mut self)
pub fn disable_sp_monitor(&mut self)
Disable SP monitoring on main core.
Sourcepub fn clear_sp_monitor_interrupt(&mut self)
pub fn clear_sp_monitor_interrupt(&mut self)
Clear SP monitoring interrupt on main core.
Sourcepub fn is_sp_monitor_interrupt_set(&self) -> bool
pub fn is_sp_monitor_interrupt_set(&self) -> bool
Check, if SP monitoring interrupt is set on main core.
Sourcepub fn sp_monitor_pc(&self) -> u32
pub fn sp_monitor_pc(&self) -> u32
Get SP monitoring PC value on main core.
Source§impl DebugAssist<'_>
impl DebugAssist<'_>
Sourcepub fn enable_region0_monitor(
&mut self,
lower_bound: u32,
upper_bound: u32,
reads: bool,
writes: bool,
)
pub fn enable_region0_monitor( &mut self, lower_bound: u32, upper_bound: u32, reads: bool, writes: bool, )
Enable region monitoring of read/write performed by the main CPU in a certain memory region0. Whenever the bus reads or writes in the specified memory region, an interrupt will be triggered. Two memory regions (region0, region1) can be monitored at the same time.
Sourcepub fn disable_region0_monitor(&mut self)
pub fn disable_region0_monitor(&mut self)
Disable region0 monitoring on main core.
Sourcepub fn clear_region0_monitor_interrupt(&mut self)
pub fn clear_region0_monitor_interrupt(&mut self)
Clear region0 monitoring interrupt on main core.
Sourcepub fn is_region0_monitor_interrupt_set(&self) -> bool
pub fn is_region0_monitor_interrupt_set(&self) -> bool
Check, if region0 monitoring interrupt is set on main core.
Sourcepub fn enable_region1_monitor(
&mut self,
lower_bound: u32,
upper_bound: u32,
reads: bool,
writes: bool,
)
pub fn enable_region1_monitor( &mut self, lower_bound: u32, upper_bound: u32, reads: bool, writes: bool, )
Enable region monitoring of read/write performed by the main CPU in a certain memory region1. Whenever the bus reads or writes in the specified memory region, an interrupt will be triggered.
Sourcepub fn disable_region1_monitor(&mut self)
pub fn disable_region1_monitor(&mut self)
Disable region1 monitoring on main core.
Sourcepub fn clear_region1_monitor_interrupt(&mut self)
pub fn clear_region1_monitor_interrupt(&mut self)
Clear region1 monitoring interrupt on main core.
Sourcepub fn is_region1_monitor_interrupt_set(&self) -> bool
pub fn is_region1_monitor_interrupt_set(&self) -> bool
Check, if region1 monitoring interrupt is set on main core.
Sourcepub fn region_monitor_pc(&self) -> u32
pub fn region_monitor_pc(&self) -> u32
Get region monitoring PC value on main core.
Trait Implementations§
Source§impl InterruptConfigurable for DebugAssist<'_>
§Stability
This API is marked as unstable and is only available when the unstable
crate feature is enabled. This comes with no stability guarantees, and could be changed
or removed at any time.
impl InterruptConfigurable for DebugAssist<'_>
§Stability
This API is marked as unstable and is only available when the unstable
crate feature is enabled. This comes with no stability guarantees, and could be changed
or removed at any time.