pub trait InterfaceRaw:
Send
+ Any
+ 'static {
type IrqHandler: TIrqHandler;
type Sender: TSender;
type Reciever: TReciever;
Show 19 methods
// Required methods
fn base_addr(&self) -> usize;
fn set_config(&mut self, config: &Config) -> Result<(), ConfigError>;
fn baudrate(&self) -> u32;
fn data_bits(&self) -> DataBits;
fn stop_bits(&self) -> StopBits;
fn parity(&self) -> Parity;
fn clock_freq(&self) -> Option<NonZero<u32>>;
fn open(&mut self);
fn close(&mut self);
fn enable_loopback(&mut self);
fn disable_loopback(&mut self);
fn is_loopback_enabled(&self) -> bool;
fn set_irq_mask(&mut self, mask: InterruptMask);
fn get_irq_mask(&self) -> InterruptMask;
fn irq_handler(&mut self) -> Option<Self::IrqHandler>;
fn take_tx(&mut self) -> Option<Self::Sender>;
fn take_rx(&mut self) -> Option<Self::Reciever>;
fn set_tx(&mut self, tx: Self::Sender) -> Result<(), SetBackError>;
fn set_rx(&mut self, rx: Self::Reciever) -> Result<(), SetBackError>;
}Required Associated Types§
Required Methods§
fn base_addr(&self) -> usize
fn set_config(&mut self, config: &Config) -> Result<(), ConfigError>
fn baudrate(&self) -> u32
fn data_bits(&self) -> DataBits
fn stop_bits(&self) -> StopBits
fn parity(&self) -> Parity
fn clock_freq(&self) -> Option<NonZero<u32>>
fn open(&mut self)
fn close(&mut self)
Sourcefn enable_loopback(&mut self)
fn enable_loopback(&mut self)
启用回环模式
Sourcefn disable_loopback(&mut self)
fn disable_loopback(&mut self)
禁用回环模式
Sourcefn is_loopback_enabled(&self) -> bool
fn is_loopback_enabled(&self) -> bool
检查回环模式是否启用
Sourcefn set_irq_mask(&mut self, mask: InterruptMask)
fn set_irq_mask(&mut self, mask: InterruptMask)
设置中断使能掩码
Sourcefn get_irq_mask(&self) -> InterruptMask
fn get_irq_mask(&self) -> InterruptMask
获取当前中断使能掩码