pub struct ModbusClient<D: DataLink> { /* private fields */ }Implementations§
Source§impl<D: DataLink> ModbusClient<D>
impl<D: DataLink> ModbusClient<D>
pub fn new(datalink: D) -> Self
pub fn with_config(datalink: D, config: ClientConfig) -> Self
pub fn config(&self) -> ClientConfig
pub async fn read_coils( &self, unit_id: u8, start: u16, quantity: u16, ) -> Result<Vec<bool>, ClientError>
pub async fn custom_request( &self, unit_id: u8, function_code: u8, payload: &[u8], ) -> Result<Vec<u8>, ClientError>
pub async fn report_server_id( &self, unit_id: u8, ) -> Result<ReportServerIdResponse, ClientError>
pub async fn read_device_identification( &self, unit_id: u8, read_device_id_code: u8, object_id: u8, ) -> Result<ReadDeviceIdentificationResponse, ClientError>
pub async fn read_discrete_inputs( &self, unit_id: u8, start: u16, quantity: u16, ) -> Result<Vec<bool>, ClientError>
pub async fn read_holding_registers( &self, unit_id: u8, start: u16, quantity: u16, ) -> Result<Vec<u16>, ClientError>
pub async fn read_input_registers( &self, unit_id: u8, start: u16, quantity: u16, ) -> Result<Vec<u16>, ClientError>
pub async fn write_single_coil( &self, unit_id: u8, address: u16, value: bool, ) -> Result<(), ClientError>
pub async fn write_single_register( &self, unit_id: u8, address: u16, value: u16, ) -> Result<(), ClientError>
pub async fn mask_write_register( &self, unit_id: u8, address: u16, and_mask: u16, or_mask: u16, ) -> Result<(), ClientError>
pub async fn write_multiple_coils( &self, unit_id: u8, start: u16, values: &[bool], ) -> Result<(), ClientError>
pub async fn write_multiple_registers( &self, unit_id: u8, start: u16, values: &[u16], ) -> Result<(), ClientError>
pub async fn read_write_multiple_registers( &self, unit_id: u8, read_start: u16, read_quantity: u16, write_start: u16, write_values: &[u16], ) -> Result<Vec<u16>, ClientError>
Auto Trait Implementations§
impl<D> !Freeze for ModbusClient<D>
impl<D> !RefUnwindSafe for ModbusClient<D>
impl<D> Send for ModbusClient<D>
impl<D> Sync for ModbusClient<D>
impl<D> Unpin for ModbusClient<D>where
D: Unpin,
impl<D> UnsafeUnpin for ModbusClient<D>where
D: UnsafeUnpin,
impl<D> UnwindSafe for ModbusClient<D>where
D: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more