Options
All
  • Public
  • Public/Protected
  • All
Menu

串口协议封装类 该类实现了 DeviceConnectionInterface 接口

import { CommonDevices } from "@ubtech/ucode-extension-common-sdk";

const { SerialPortHardwareDevice, getSerialPortDeviceRegister } = CommonDevices.SerialPort;

class DemoSerialPortHardwareDevice extends SerialPortHardwareDevice { // 继承 SerialPortHardwareDevice
say(data) {
this.send(Buffer.from(data));
}
}

Hierarchy

  • SerialPortProtocol

Implements

Index

Constructors

constructor

Properties

Protected _isReconnectAction

_isReconnectAction: boolean = false

connectStatus

connectStatus: EConnectStatus = EConnectStatus.Disconnected
sealed

Readonly deviceType

deviceType: DeviceType

硬件协议的设备类型,会在 DeviceConnection 实例化的时候被注入

Optional discoverDevice

discoverDevice?: IDiscoverDevice

扫描的时候选中的设备

Readonly eventbus

硬件协议的事件 bus,会在 DeviceConnection 实例化的时候被注入

Protected Optional options

Accessors

serialPort

  • internal

    你可以获取到 串口实例,如果你不知道这个怎么使用,建议不要随便调用

    Returns undefined | SerialPort

Methods

afterConnect

  • afterConnect(): Promise<void>

afterDisconnect

  • afterDisconnect(): Promise<void>

beforeConnect

  • beforeConnect(): Promise<void>

beforeDestroy

  • beforeDestroy(): Promise<void>
  • 串口 销毁前的钩子 该方法在执行串口断开之前执行,可以用于发送指令 该方法可以被重写

    virtual

    Returns Promise<void>

    Promise

beforeDisconnect

  • beforeDisconnect(): Promise<void>

Protected clearRequestQueue

  • clearRequestQueue(): void
  • Returns void

connect

  • 串口连接 我们不建议你重写该方法,如果你对连接前,或者连接后需要做处理,可以使用钩子:beforeConnect,或者 afterConnect

    sealed

    Parameters

    Returns Promise<void>

    Promise

connectNoEmit

  • connectNoEmit(): Promise<void>
  • 上传代码结束后重连不发送消息给上层

    Returns Promise<void>

destroy

  • destroy(): Promise<void>

disconnect

  • disconnect(): Promise<void>
  • 串口断开连接 我们不建议你重写该方法,如果你对断开连接前,或者断开连接后需要处理,可以使用钩子:beforeDisconnect,或者 afterConnect

    sealed

    Returns Promise<void>

    Promise

disconnectNoEmit

  • disconnectNoEmit(): Promise<void>
  • 上传代码断开不发送消息给上层

    Returns Promise<void>

drain

  • drain(callback: (err?: any) => void): void
  • 等待所有的输出数据(缓冲区数据)被写入串口 具体可以参照: SerialPort#Drain

    Parameters

    • callback: (err?: any) => void
        • (err?: any): void
        • Parameters

          • Optional err: any

          Returns void

    Returns void

flush

  • flush(callback: (err?: any) => void): void
  • 清理 串口 缓存的读写缓冲区 具体可以参照:SerialPort#Flush

    Parameters

    • callback: (err?: any) => void
        • (err?: any): void
        • Parameters

          • Optional err: any

          Returns void

    Returns void

isConnected

  • isConnected(): boolean
  • virtual

    判断串口连接是否断开, 默认我们会走标准的流程, 如果你有特殊的流程, 你可以重写该方法

    Returns boolean

onData

  • onData(listener: (data: string | Buffer) => void): Disposable
  • 监听事件

    Parameters

    • listener: (data: string | Buffer) => void

      监听callback

        • (data: string | Buffer): void
        • Parameters

          • data: string | Buffer

          Returns void

    Returns Disposable

    Disposable

send

  • send(data: string | Buffer, isTopPriority?: boolean, encoding?: DataEncoding): boolean
  • 数据发送

    Parameters

    • data: string | Buffer

      数据

    • isTopPriority: boolean = false

      是否为最高优先级指令。如停止指令,不进入队列,直接发送并清空队列

    • Optional encoding: DataEncoding

    Returns boolean

set

  • set(options: SetOptions, errorCallback: (err?: any) => void): void
  • 对串口设置一些全局设定 具体可以参照:SerialPort#Set

    Parameters

    • options: SetOptions

      SetOptions 串口 SetOptions

    • errorCallback: (err?: any) => void
        • (err?: any): void
        • Parameters

          • Optional err: any

          Returns void

    Returns void

Generated using TypeDoc