[−][src]Struct dwm1001::DWM1001
Provides access to the features of the DWM1001/DWM1001-Dev board
You can get an instance of this struct by using DWM1001::take
or
DWM1001::steal
.
Fields
pins: Pins
The nRF52's pins
leds: Leds
The LEDs on the DWM1001-Dev board
This is only available if the dev
feature is enabled.
uart: Uarte<UARTE0>
DWM1001 UART, wired to USB virtual UART port
This is only available if the dev
feature is enabled.
DW_RST: DW_RST
The DW_RST pin (P0.24 on the nRF52)
Can be used to reset the DW1000 externally.
DW_IRQ: DW_IRQ
The DW_IRQ pin (P0.19 on the nRF52)
Can be used to wait for DW1000 interrupts.
DW1000: DW1000<Spim<SPIM2>, P0_17<Output<PushPull>>, Uninitialized>
The Decawave DW1000 Radio IC
LIS2DH12: Twim<TWIM1>
LIS2DH12 3-axis accelerometer
LIS2DH12 can be used either bare or together with the lis2dh12 driver.
The lis2dh12
driver implements the
Accelerometer trait
CBP: CBP
nRF52 nRF52 core peripheral: Cache and branch predictor maintenance operations
CPUID: CPUID
nRF52 core peripheral: CPUID
DCB: DCB
nRF52 core peripheral: Debug Control Block
DWT: DWT
nRF52 core peripheral: Data Watchpoint and Trace unit
FPB: FPB
nRF52 core peripheral: Flash Patch and Breakpoint unit
FPU: FPU
nRF52 core peripheral: Floating Point Unit
ITM: ITM
nRF52 core peripheral: Instrumentation Trace Macrocell
MPU: MPU
nRF52 core peripheral: Memory Protection Unit
NVIC: NVIC
nRF52 core peripheral: Nested Vector Interrupt Controller
SCB: SCB
nRF52 core peripheral: System Control Block
SYST: SYST
nRF52 core peripheral: SysTick Timer
TPIU: TPIU
nRF52 core peripheral: Trace Port Interface Unit
FICR: FICR
nRF52 peripheral: FICR
UICR: UICR
nRF52 peripheral: UICR
BPROT: BPROT
nRF52 peripheral: BPROT
POWER: POWER
nRF52 peripheral: POWER
CLOCK: CLOCK
nRF52 peripheral: CLOCK
RADIO: RADIO
nRF52 peripheral: RADIO
UART0: UART0
nRF52 peripheral: UART0
SPIM0: SPIM0
nRF52 peripheral: SPIM0
SPIS0: SPIS0
nRF52 peripheral: SPIS0
TWIM0: TWIM0
nRF52 peripheral: TWIM0
TWIS0: TWIS0
nRF52 peripheral: TWIS0
SPI0: SPI0
nRF52 peripheral: SPI0
TWI0: TWI0
nRF52 peripheral: TWI0
SPIM1: SPIM1
nRF52 peripheral: SPIM1
SPIS1: SPIS1
nRF52 peripheral: SPIS1
TWIS1: TWIS1
nRF52 peripheral: TWIS1
SPI1: SPI1
nRF52 peripheral: SPI1
TWI1: TWI1
nRF52 peripheral: TWI1
NFCT: NFCT
nRF52 peripheral: NFCT
GPIOTE: GPIOTE
nRF52 peripheral: GPIOTE
SAADC: SAADC
nRF52 peripheral: SAADC
TIMER0: TIMER0
nRF52 peripheral: TIMER0
TIMER1: TIMER1
nRF52 peripheral: TIMER1
TIMER2: TIMER2
nRF52 peripheral: TIMER2
RTC0: RTC0
nRF52 peripheral: RTC0
TEMP: TEMP
nRF52 peripheral: TEMP
RNG: RNG
nRF52 peripheral: RNG
ECB: ECB
nRF52 peripheral: ECB
CCM: CCM
nRF52 peripheral: CCM
AAR: AAR
nRF52 peripheral: AAR
WDT: WDT
nRF52 peripheral: WDT
RTC1: RTC1
nRF52 peripheral: RTC1
QDEC: QDEC
nRF52 peripheral: QDEC
COMP: COMP
nRF52 peripheral: COMP
LPCOMP: LPCOMP
nRF52 peripheral: LPCOMP
SWI0: SWI0
nRF52 peripheral: SWI0
EGU0: EGU0
nRF52 peripheral: EGU0
SWI1: SWI1
nRF52 peripheral: SWI1
EGU1: EGU1
nRF52 peripheral: EGU1
SWI2: SWI2
nRF52 peripheral: SWI2
EGU2: EGU2
nRF52 peripheral: EGU2
SWI3: SWI3
nRF52 peripheral: SWI3
EGU3: EGU3
nRF52 peripheral: EGU3
SWI4: SWI4
nRF52 peripheral: SWI4
EGU4: EGU4
nRF52 peripheral: EGU4
SWI5: SWI5
nRF52 peripheral: SWI5
EGU5: EGU5
nRF52 peripheral: EGU5
TIMER3: TIMER3
nRF52 peripheral: TIMER3
TIMER4: TIMER4
nRF52 peripheral: TIMER4
PWM0: PWM0
nRF52 peripheral: PWM0
PDM: PDM
nRF52 peripheral: PDM
NVMC: NVMC
nRF52 peripheral: NVMC
PPI: PPI
nRF52 peripheral: PPI
MWU: MWU
nRF52 peripheral: MWU
PWM1: PWM1
nRF52 peripheral: PWM1
PWM2: PWM2
nRF52 peripheral: PWM2
RTC2: RTC2
nRF52 peripheral: RTC2
I2S: I2S
nRF52 peripheral: I2S
Implementations
impl DWM1001
[src]
pub fn take() -> Option<Self>
[src]
Take ownership of a DWM1001
instance safely
To uphold a numer of safety guarantees made by this crate's UI, only one
instance of DWM1001
must exist at any given time.
This method will return an instance of DWM1001
the first time it is
called. It will return only None
on subsequent calls.
pub unsafe fn steal() -> Self
[src]
Take ownership of a DWM1001
instance, circumventing safety guarantees
This method produces an instance of DWM1001
, regardless of whether
another instance was created previously.
Safety
This method can be used to create multiple instances of DWM1001
. Those
instances can interfere with each other, causing all kinds of unexpected
behavior and circumventing safety guarantees in many ways.
Always use DWM1001::take
, unless you really know what you're doing.
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<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<Src, Dst> LosslessTryInto<Dst> for Src where
Dst: LosslessTryFrom<Src>,
[src]
Dst: LosslessTryFrom<Src>,
pub fn lossless_try_into(self) -> Option<Dst>
[src]
impl<Src, Dst> LossyInto<Dst> for Src where
Dst: LossyFrom<Src>,
[src]
Dst: LossyFrom<Src>,
pub fn lossy_into(self) -> Dst
[src]
impl<T> Same<T> for T
type Output = T
Should always be Self
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>,