InterfaceRaw

Trait InterfaceRaw 

Source
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§

Source

fn base_addr(&self) -> usize

Source

fn set_config(&mut self, config: &Config) -> Result<(), ConfigError>

Source

fn baudrate(&self) -> u32

Source

fn data_bits(&self) -> DataBits

Source

fn stop_bits(&self) -> StopBits

Source

fn parity(&self) -> Parity

Source

fn clock_freq(&self) -> Option<NonZero<u32>>

Source

fn open(&mut self)

Source

fn close(&mut self)

Source

fn enable_loopback(&mut self)

启用回环模式

Source

fn disable_loopback(&mut self)

禁用回环模式

Source

fn is_loopback_enabled(&self) -> bool

检查回环模式是否启用

Source

fn set_irq_mask(&mut self, mask: InterruptMask)

设置中断使能掩码

Source

fn get_irq_mask(&self) -> InterruptMask

获取当前中断使能掩码

Source

fn irq_handler(&mut self) -> Option<Self::IrqHandler>

Source

fn take_tx(&mut self) -> Option<Self::Sender>

Source

fn take_rx(&mut self) -> Option<Self::Reciever>

Source

fn set_tx(&mut self, tx: Self::Sender) -> Result<(), SetBackError>

Source

fn set_rx(&mut self, rx: Self::Reciever) -> Result<(), SetBackError>

Implementors§