pub trait InterfaceVariant {
// Required methods
async fn reset(
&mut self,
delay: &mut impl DelayNs,
) -> Result<(), RadioError>;
async fn wait_on_busy(&mut self) -> Result<(), RadioError>;
async fn await_irq(&mut self) -> Result<(), RadioError>;
async fn enable_rf_switch_rx(&mut self) -> Result<(), RadioError>;
async fn enable_rf_switch_tx(&mut self) -> Result<(), RadioError>;
async fn disable_rf_switch(&mut self) -> Result<(), RadioError>;
}Expand description
Functions implemented for an embedded framework for an MCU/LoRa chip combination to allow this crate to control the LoRa chip.
Required Methods§
Sourceasync fn reset(&mut self, delay: &mut impl DelayNs) -> Result<(), RadioError>
async fn reset(&mut self, delay: &mut impl DelayNs) -> Result<(), RadioError>
Reset the LoRa chip
Sourceasync fn wait_on_busy(&mut self) -> Result<(), RadioError>
async fn wait_on_busy(&mut self) -> Result<(), RadioError>
Wait for the LoRa chip to become available for an operation
Sourceasync fn await_irq(&mut self) -> Result<(), RadioError>
async fn await_irq(&mut self) -> Result<(), RadioError>
Wait for the LoRa chip to indicate an event has occurred
Sourceasync fn enable_rf_switch_rx(&mut self) -> Result<(), RadioError>
async fn enable_rf_switch_rx(&mut self) -> Result<(), RadioError>
Enable an antenna used for receive operations, disabling other antennas
Sourceasync fn enable_rf_switch_tx(&mut self) -> Result<(), RadioError>
async fn enable_rf_switch_tx(&mut self) -> Result<(), RadioError>
Enable an antenna used for send operations, disabling other antennas
Sourceasync fn disable_rf_switch(&mut self) -> Result<(), RadioError>
async fn disable_rf_switch(&mut self) -> Result<(), RadioError>
Disable all antennas
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.