Struct esp_idf_hal::timer::TimerDriver
source · pub struct TimerDriver<'d> { /* private fields */ }
Implementations§
source§impl<'d> TimerDriver<'d>
impl<'d> TimerDriver<'d>
pub fn new<TIMER: Timer>( _timer: impl Peripheral<P = TIMER> + 'd, config: &Config ) -> Result<Self, EspError>
pub fn enable(&mut self, enable: bool) -> Result<(), EspError>
pub fn counter(&self) -> Result<u64, EspError>
pub fn set_counter(&mut self, value: u64) -> Result<(), EspError>
pub fn enable_alarm(&mut self, enable: bool) -> Result<(), EspError>
pub fn alarm(&self) -> Result<u64, EspError>
pub fn set_alarm(&mut self, value: u64) -> Result<(), EspError>
pub fn enable_interrupt(&mut self) -> Result<(), EspError>
pub fn disable_interrupt(&mut self) -> Result<(), EspError>
sourcepub unsafe fn subscribe(
&mut self,
callback: impl FnMut() + 'static
) -> Result<(), EspError>
pub unsafe fn subscribe( &mut self, callback: impl FnMut() + 'static ) -> Result<(), EspError>
Safety
Care should be taken not to call STD, libc or FreeRTOS APIs (except for a few allowed ones) in the callback passed to this function, as it is executed in an ISR context.