Options
All
  • Public
  • Public/Protected
  • All
Menu

Class W5500Socket

Class that performs and manages socket communication

ソケット通信を行い管理するクラス

Hierarchy

  • W5500Socket

Index

Constructors

constructor

  • Parameters

    • id: number
    • ethernet: W5500

    Returns W5500Socket

Properties

id

id: number

Socket ID ソケットID

stringMode

stringMode: boolean = false

Treat received data as string (UTF-8)

受信データを文字列(UTF-8)として扱う

Methods

checkInterruptWait

  • checkInterruptWait(): Promise<undefined | false | true>
  • Check for interrupts

    If there is an interrupt, call the preset handler

    割り込みをチェック

    割り込みがあった場合、事前に設定されたhandlerを呼び出します

    Returns Promise<undefined | false | true>

    Then whether you can check for interrupts

    次に割り込みをチェックできるかどうか

finalizeWait

  • finalizeWait(): Promise<void>
  • Socket termination process ソケットの終了処理

    Returns Promise<void>

getDestIPWait

  • getDestIPWait(): Promise<string>
  • Get the IPv4 address of the connection source (only for TCP server)

    接続元のIPv4アドレスを取得(TCPサーバーのときのみ)

    Returns Promise<string>

    IPv4 address IPv4アドレス

getDestPortWait

  • getDestPortWait(): Promise<number>
  • Get the port number of the connection source (only for TCP server)

    接続元のポート番号を取得(TCPサーバーのときのみ)

    Returns Promise<number>

    Port number ポート番号

getProtocol

  • getProtocol(): null | "TCPClient" | "TCPServer" | "UDP"
  • Get the current protocol 現在のプロトコルを取得

    Returns null | "TCPClient" | "TCPServer" | "UDP"

    Protocol プロトコル

getRXReadDataPointerWait

  • getRXReadDataPointerWait(): Promise<number>
  • Get the read start address of the receive buffer

    受信バッファの読み込み開始アドレスを取得

    Returns Promise<number>

    Address アドレス

getRXReceiveSizeWait

  • getRXReceiveSizeWait(): Promise<number>
  • Get the length of received data 受信データの長さを取得

    Returns Promise<number>

    Length 長さ

getRXWritePointerWait

  • getRXWritePointerWait(): Promise<number>
  • Get the write start address of the receive buffer

    受信バッファの書き込み開始アドレスを取得

    Returns Promise<number>

    Address アドレス

getStatusWait

  • getStatusWait(): Promise<W5500SocketParts.Status | "UNKNOWN">
  • Get Status ステータスを取得

    Returns Promise<W5500SocketParts.Status | "UNKNOWN">

    Status ステータス

getTXFreeSizeWait

  • getTXFreeSizeWait(): Promise<number>
  • Get free size of send buffer 送信バッファの空きサイズを取得

    Returns Promise<number>

    Free size 空きサイズ

getTXReadPointerWait

  • getTXReadPointerWait(): Promise<number>
  • Get the write start address of the send buffer

    送信バッファの書き込み開始アドレスを取得

    Returns Promise<number>

    Address アドレス

initWait

  • initWait(config: Config): Promise<boolean>
  • Write the socket settings and open the socket (Connect / Listen is also executed for TCP)

    ソケット設定の書き込みをし、ソケットをOpenに(TCPの時はConnect/Listenも実行)

    Parameters

    • config: Config

      Socket config ソケットの設定内容

    Returns Promise<boolean>

    Write result 書き込み結果

receiveDataWait

  • receiveDataWait(): Promise<string | number[]>
  • Read the received data 受信されたデータを読取

    Returns Promise<string | number[]>

    Raw byte data or string to receive 受信データまたは文字列

sendCommandWait

  • sendCommandWait(command: W5500SocketParts.Command): Promise<boolean>
  • Send command コマンドを送信

    Parameters

    • command: W5500SocketParts.Command

      Command コマンド

    Returns Promise<boolean>

    Write result 書き込み結果

sendDataFastWait

  • sendDataFastWait(data: number[] | string): Promise<boolean>
  • Send data, no write check データを送信、書き込みチェックなし

    Parameters

    • data: number[] | string

      Raw byte data or string to send 送信するバイトデータまたは文字列

    Returns Promise<boolean>

    Write result 書き込み結果

sendDataWait

  • sendDataWait(data: number[] | string): Promise<boolean>
  • Send data データを送信

    Parameters

    • data: number[] | string

      Raw byte data or string to send 送信するバイトデータまたは文字列

    Returns Promise<boolean>

    Write result 書き込み結果

setAllInterruptHandler

  • setAllInterruptHandler(handler: (socket: W5500Socket, name: W5500SocketParts.Interrupt, extra?: number[] | string | DestInfo) => Promise<void>): (socket: W5500Socket, name: W5500SocketParts.Interrupt, extra?: number[] | string | DestInfo) => Promise<void>
  • Set a handler to catch all interrupts

    Run checkInterruptWait() regularly to actually catch

    全ての割り込みをキャッチするハンドラーを設定

    実際にキャッチするにはcheckInterrupt()を定期的に実行

    Parameters

    • handler: (socket: W5500Socket, name: W5500SocketParts.Interrupt, extra?: number[] | string | DestInfo) => Promise<void>

      Callback function, name is the type of interrupt, extra is only when name=ReceiveData and when name=ConnectSuccess and protocol=TCPServer

      コールバック関数、nameは割り込みの種類、extraはname=ReceiveDataの時とname=ConnectSuccessかつprotocol=TCPServerの時のみ

        • (socket: W5500Socket, name: W5500SocketParts.Interrupt, extra?: number[] | string | DestInfo): Promise<void>
        • Parameters

          • socket: W5500Socket
          • name: W5500SocketParts.Interrupt
          • Optional extra: number[] | string | DestInfo

          Returns Promise<void>

    Returns (socket: W5500Socket, name: W5500SocketParts.Interrupt, extra?: number[] | string | DestInfo) => Promise<void>

      • (socket: W5500Socket, name: W5500SocketParts.Interrupt, extra?: number[] | string | DestInfo): Promise<void>
      • Parameters

        • socket: W5500Socket
        • name: W5500SocketParts.Interrupt
        • Optional extra: number[] | string | DestInfo

        Returns Promise<void>

setDestIPWait

  • setDestIPWait(ip: string): Promise<boolean>
  • Set the IPv4 address of the connection destination

    接続先のIPv4アドレスを設定

    Parameters

    • ip: string

      IPv4 address IPv4アドレス

    Returns Promise<boolean>

    Write result 書き込み結果

setDestMacAddressWait

  • setDestMacAddressWait(mac: string): Promise<boolean>
  • Set the MAC address of the connection destination (only if required by UDP)

    接続先のMACアドレスを設定(UDPで必要な場合のみ)

    Parameters

    • mac: string

      MAC address MACアドレス

    Returns Promise<boolean>

    Write result 書き込み結果

setDestPortWait

  • setDestPortWait(port: number): Promise<boolean>
  • Set the port number of the connection destination

    接続先のポート番号を設定

    Parameters

    • port: number

      Port number ポート番号

    Returns Promise<boolean>

    Write result 書き込み結果

setFragmentWait

  • setFragmentWait(fragment: number): Promise<boolean>
  • Set IP header fragment IPヘッダーのフラグメントを設定

    Parameters

    • fragment: number

      IP header fragment IPヘッダーのフラグメント (0x0000~0xFFFF)

    Returns Promise<boolean>

    Write result 書き込み結果

setIPTypeOfServiceWait

  • setIPTypeOfServiceWait(type: number): Promise<boolean>
  • Set IP service type IPサービスタイプを設定

    Parameters

    • type: number

      IP service type IPサービスタイプ (1byte)

    Returns Promise<boolean>

    Write result 書き込み結果

setInterruptHandler

  • setInterruptHandler(name: W5500SocketParts.Interrupt, handler: ((socket: W5500Socket) => Promise<void>) | ((socket: W5500Socket, extra?: number[] | string | DestInfo) => Promise<void>)): ((socket: W5500Socket) => Promise<void>) | ((socket: W5500Socket, extra?: number[] | string | DestInfo) => Promise<void>)
  • Set a handler to catch a specific interrupt

    Run checkInterruptWait() regularly to actually catch

    特定の割り込みをキャッチするハンドラーを設定

    実際にキャッチするにはcheckInterrupt()を定期的に実行

    Parameters

    • name: W5500SocketParts.Interrupt

      The name of the interrupt to get 取得する割り込みの名前 (SendOK | Timeout | ReceiveData | Disconnect | ConnectSuccess)

    • handler: ((socket: W5500Socket) => Promise<void>) | ((socket: W5500Socket, extra?: number[] | string | DestInfo) => Promise<void>)

      Callback function, extra is only when name=ReceiveData and when name=ConnectSuccess and protocol=TCPServer

      コールバック関数、extraはname=ReceiveDataの時とname=ConnectSuccessかつprotocol=TCPServerの時のみ

    Returns ((socket: W5500Socket) => Promise<void>) | ((socket: W5500Socket, extra?: number[] | string | DestInfo) => Promise<void>)

setKeepAliveTimerWait

  • setKeepAliveTimerWait(time: number): Promise<boolean>
  • Set keep-alive transmission interval (only if TCP requires)

    keep-aliveの送信間隔を設定(TCPで必要な場合のみ)

    Parameters

    • time: number

      keep-alive transmission interval (sec) (0~1275)

      keep-alive 送信間隔(秒)(0~1275)

    Returns Promise<boolean>

    Write result 書き込み結果

setMaxSegmentSizeWait

  • setMaxSegmentSizeWait(size: number): Promise<boolean>
  • Set maximum segment size (only if required by TCP)

    最大セグメントサイズを設定(TCPで必要な場合のみ)

    Parameters

    • size: number

      最大セグメントサイズ

    Returns Promise<boolean>

    Write result 書き込み結果

setModeWait

  • setModeWait(config: Config): Promise<boolean>
  • Set mode モードを設定

    Parameters

    • config: Config

      Multicast, BroardcastBlock, NoDelayACK, MulticastVer1, UnicastBlock and Protocol

    Returns Promise<boolean>

    Write result 書き込み結果

setRXBufferSizeWait

  • setRXBufferSizeWait(size: W5500SocketParts.BufferSize): Promise<boolean>
  • Set receive buffer size 受信バッファサイズを設定

    Parameters

    • size: W5500SocketParts.BufferSize

      Buffer size (KB) only to the power of 2, up to 16

      バッファサイズ(KB) 2の累乗のみ、16まで

    Returns Promise<boolean>

    Write result 書き込み結果

setRXReadDataPointerWait

  • setRXReadDataPointerWait(pointer: number): Promise<boolean>
  • Set the next read start address of the receive buffer

    受信バッファの次の読み込み開始アドレスを設定

    Parameters

    • pointer: number

      Address アドレス

    Returns Promise<boolean>

    Write result 書き込み結果

setSourcePortWait

  • setSourcePortWait(port: number): Promise<boolean>
  • Set the connection source port 接続元ポートを設定

    Parameters

    • port: number

      Port number ポート番号

    Returns Promise<boolean>

    Write result 書き込み結果

setTTLWait

  • setTTLWait(ttl: number): Promise<boolean>
  • Set TTL TTLを設定

    Parameters

    • ttl: number

      TTL (0~65535)

    Returns Promise<boolean>

    Write result 書き込み結果

setTXBufferSizeWait

  • setTXBufferSizeWait(size: W5500SocketParts.BufferSize): Promise<boolean>
  • Set send buffer size 送信バッファサイズを設定

    Parameters

    • size: W5500SocketParts.BufferSize

      Buffer size (KB) only to the power of 2, up to 16

      バッファサイズ(KB) 2の累乗のみ、16まで

    Returns Promise<boolean>

    Write result 書き込み結果

setTXWritePointerWait

  • setTXWritePointerWait(pointer: number): Promise<boolean>
  • Set the next write start address of the send buffer

    送信バッファの次の書き込み開始アドレスを設定

    Parameters

    • pointer: number

      Address アドレス

    Returns Promise<boolean>

    Write result 書き込み結果

Generated using TypeDoc