主要内容

tcpserver

创建TCP / IP服务器

    描述

    一个tcpserver对象表示一个TCP / IP服务器接收一个TCP / IP客户端连接请求指定的IP地址和端口号和接受请求。一旦服务器建立一个连接,你可以接收数据和发送数据到客户端使用读写功能。每一个tcpserver只支持一次一个金宝app客户端连接对象。

    创建

    描述

    例子

    t= tcpserver (地址,港口)创建一个TCP / IP服务器侦听TCP / IP客户端连接请求指定的IP地址地址和指定的端口号港口

    输入参数地址设置ServerAddress财产和输入参数港口设置ServerPort财产。

    例子

    t= tcpserver (港口)创建一个TCP / IP服务器监听客户端连接请求的端口号港口和IP地址“::”。这个IP地址表明服务器接受客户端连接的机器上的任何有效的IP地址。

    例子

    t= tcpserver (___,名称,值)创建一个TCP / IP服务器和设置额外的属性使用一个或多个名称-值对参数。设置超时,ByteOrder,ConnectionChangedFcn使用名称-值对参数属性。后的任何输入参数组合在前面的语法,附上报价中的每个属性名,其次是属性值。

    例如,t = tcpserver(4000年,20岁的“超时”,“ByteOrder”、“大端法”)创建一个TCP / IP端口上侦听连接的服务器4000年在IP地址“::”。它将超时时间设置为20秒,大端字节顺序。

    属性

    全部展开

    对象创建属性

    IP地址在服务器侦听TCP / IP客户端连接,指定为一个特征向量或字符串标量。你可以设置这个属性的任何有效的IPV4地址,IPV6地址,或机器的主机名。这个属性可以设置只有在对象创建。

    例子:t = tcpserver(“144.212.100.10”, 4000年)在端口4000上侦听连接144.212.100.10和IP地址。

    请注意

    如果你指定一个主机名在对象创建,tcpserver解决一个IPV4和IPV6地址,并设置ServerAddress解决IP地址。

    数据类型:字符|字符串

    端口号,服务器侦听TCP / IP客户端连接,指定为1到65535之间的数,包容性。这个属性可以设置只有在对象创建。

    例子:t = tcpserver(“144.212.100.10”, 4000年)在端口4000上侦听连接144.212.100.10和IP地址。

    数据类型:

    允许时间在几秒钟内完成读写操作,指定为一个数值。设置该属性在创建对象使用一个名称-值对的论点。你也可以改变它在对象创建使用点符号。

    例子:t = tcpserver(“144.212.100.10 ", 4000年,“超时”,20)读/写超时时间设置为20秒。

    数据类型:

    连续的字节顺序排列成更大的数值,指定为“低位优先”“大端法”。这只适用于以下数值数据类型:uint16,int16,uint32,int32,uint64,int64,,。设置该属性在创建对象使用一个名称-值对的论点。你也可以改变它在对象创建使用点符号。

    例子:t = tcpserver(“144.212.100.10 ", 4000年,“ByteOrder”、“大端法”)集大端字节顺序。

    数据类型:字符|字符串

    连接或断开事件,引发的回调函数指定为一个函数处理。连接或断开事件发生在TCP / IP客户端连接到或从服务器断开连接。设置该属性在创建对象使用一个名称-值对的论点。你也可以改变它在对象创建使用点符号。这个属性是空的,直到你指定一个函数处理。

    例子:t = tcpserver(“144.212.100.10 ", 4000年,“ConnectionChangedFcn @myConnectionFcn)设置连接回调函数myConnectionFcn。当一个客户端连接或断开,myConnectionFcn触发器。

    数据类型:function_handle

    连接属性

    这个属性是只读的。

    服务器连接状态,作为一个数字或逻辑返回1(真正的)或0()。如果此属性的值真正的,一个TCP / IP客户端连接到服务器。

    你一次只能连接到一个客户。如果一个客户端从服务器断开,您可以立即连接到另一个客户端。

    数据类型:逻辑

    这个属性是只读的。

    连接客户机的IP地址,返回一个字符串。这个属性的值匹配客户机的IP地址。这个属性的值是空的,直到一个TCP / IP客户端建立一个连接到服务器。如果一个客户端从服务器断开,这个属性的值变成了空的。

    例子:t.ClientAddress返回的IP地址连接客户端。

    数据类型:字符串

    这个属性是只读的。

    连接客户端口号,作为双返回。这个属性的值是空的,直到一个TCP / IP客户端建立一个连接到服务器。

    例子:t.ClientPort返回客户机连接的端口号。

    数据类型:

    读和写的属性

    终结者的角色对于阅读和写作ASCII-terminated数据,返回“如果”,“CR”,“CR / LF”,或者一个数字从0到255的整数,包容性。如果读写终端是不同的,《终结者》返回1 x2单元阵列的这些值。设置该属性的configureTerminator函数。

    例子:configureTerminator (t,“CR”)集的读写终端“CR”

    例子:configureTerminator (t,“CR”, 10)设置阅读《终结者》“CR”写《终结者》10

    数据类型:|字符|字符串

    这个属性是只读的。

    可用的字节数,返回数值。

    例子:t.NumBytesAvailable返回读取的字节数。

    数据类型:

    这个属性是只读的。

    总写的字节数,返回数值。这个属性的值不重置为0,当一个客户端断开或连接到服务器。

    例子:t.NumBytesWritten返回的字节数。

    数据类型:

    回调函数属性

    可用字节数调触发模式,返回“关闭”,“字节”,或“终结者”。此设置确定如果回调,由指定的字节数BytesAvailableFcnCount或由指定的终结者《终结者》。设置该属性的configureCallback函数。

    例子:configureCallback (t,“字节”,50岁,@callbackFcn)设置callbackFcn每次回调触发50字节读取新的数据是可用的。

    例子:configureCallback (t,“终结者”,@callbackFcn)设置callbackFcn回调触发终结者时可以阅读。

    例子:configureCallback (t,“关闭”)关闭回调。

    数据类型:字符|字符串

    的字节数的数据触发指定的回调BytesAvailableFcn,作为一个双返回。这个值时,才使用BytesAvailableFcnMode属性是“字节”。设置这些属性的configureCallback函数。

    例子:configureCallback (t,“字节”,50岁,@callbackFcn)设置callbackFcn每次回调触发50字节读取新的数据是可用的。

    数据类型:

    回调函数可用事件引发的字节,作为一个函数返回句柄。可用字节事件是由接收一定数量的字节或终结者。这个属性是空的,直到你指定一个函数处理。设置该属性的configureCallback函数。

    例子:configureCallback (t,“字节”,50岁,@callbackFcn)设置callbackFcn每次回调触发50字节读取新的数据是可用的。

    数据类型:function_handle

    回调函数触发事件,返回一个错误作为处理函数。时,将生成一个错误事件服务器的网络连接中断或丢失。这个属性是空的,直到你指定一个函数处理。

    例子:t。ErrorOccurredFcn = @myErrorFcn

    数据类型:function_handle

    通用属性的用户数据,作为任何MATLAB返回®数据类型。例如,您可以使用这个属性来存储数据从一个回调函数。

    例子:t.UserData

    对象的功能

    读取数据发送到TCP / IP服务器
    readline 读取行ASCII字符串数据发送到TCP / IP服务器
    readbinblock 读一binblock数据发送到服务器的TCP / IP
    从TCP / IP服务器写入数据
    writeline 写的ASCII数据从TCP / IP服务器
    writebinblock 编写一个binblock从TCP / IP的数据服务器
    configureTerminator 为ASCII字符串设置终结者沟通
    configureCallback 设置回调函数和触发条件沟通
    冲洗 清除缓冲区使用TCP / IP服务器进行通信

    例子

    全部折叠

    创建一个TCP / IP服务器调用t侦听连接您的机器的IP地址和端口4000。你的IP地址不同于这个例子中的一个。它必须是任何有效的IPV4地址,IPV6地址,或适配器上的机器的主机名。

    t = tcpserver (“172.28.200.145”,4000)
    t = TCPServer属性:ServerAddress:“172.28.200.145”ServerPort: 4000连接:0 ClientAddress:“ClientPort: [] NumBytesAvailable: 0显示所有属性,函数

    的值连接,ClientAddress,ClientPort属性表明,TCP / IP客户端不是连接到服务器。

    创建一个TCP / IP服务器调用t侦听连接的IP地址和端口4000。

    t = tcpserver (4000)
    t = TCPServer属性:ServerAddress:“::”ServerPort: 4000连接:0 ClientAddress:“ClientPort: [] NumBytesAvailable: 0显示所有属性,函数

    的值连接,ClientAddress,ClientPort属性表明,TCP / IP客户端不是连接到服务器。

    创建一个TCP / IP服务器调用t并设置读写超时时间为20秒。

    t = tcpserver (4000“超时”,20)
    t = TCPServer属性:ServerAddress:“::”ServerPort: 4000连接:0 ClientAddress:“ClientPort: [] NumBytesAvailable: 0显示所有属性,函数

    显示的值超时

    t.Timeout
    ans = 20

    输出显示了指定超时值,表明t等待20秒完成一个读或写操作。

    创建一个回调函数connectionFcn并保存它。m文件在当前工作目录中。这个回调函数被调用时,在MATLAB命令窗口中显示一条消息说明连接或断开。您可以修改这些代码执行读或写操作在TCP / IP服务器,而不是显示一条消息。

    函数connectionFcn (src, ~)如果src。连接disp (“这消息发送服务器接受客户端连接请求后。”)其他的disp (“客户端断开连接。)结束结束

    创建TCP / IP服务器调用服务器并设置ConnectionChangedFcn财产的处理connectionFcn回调函数。

    服务器= tcpserver (“localhost”,4000,“ConnectionChangedFcn”@connectionFcn)
    服务器= TCPServer属性:ServerAddress: ServerPort“127.0.0.1: 4000连接:0 ClientAddress:“ClientPort: [] NumBytesAvailable: 0显示所有属性,函数

    创建一个TCP / IP客户端调用客户端与服务器相同的IP地址和端口号。

    客户= tcpclient (“localhost”,4000)
    客户= tcpclient属性:地址:“localhost”端口:4000 NumBytesAvailable: 0显示所有属性,函数

    这个消息被发送后由服务器接受客户端连接请求。

    在您创建客户端,连接到服务器。这个触发事件服务器的连接调用connectionFcn回调函数。回调函数返回的消息你看到命令窗口。

    从服务器断开客户端通过清除它。

    清晰的客户端

    客户端断开连接。

    清理服务器的客户端断开事件触发并返回的消息connectionFcn回调函数。

    创建一个TCP / IP服务器监听客户端连接请求在指定端口和IP地址。然后,写数据从服务器到客户机连接。

    创建一个TCP / IP服务器侦听连接本地主机和端口4000。

    服务器= tcpserver (“localhost”,4000)
    服务器= TCPServer属性:ServerAddress: ServerPort“127.0.0.1: 4000连接:0 ClientAddress:“ClientPort: [] NumBytesAvailable: 0显示所有属性,函数

    创建一个TCP / IP客户端连接到您的服务器对象使用tcpclient。您必须指定相同的IP地址和端口号用于创建服务器

    客户= tcpclient (“localhost”,4000)
    客户= tcpclient属性:地址:“localhost”端口:4000 NumBytesAvailable: 0显示所有属性,函数

    看到的值连接,ClientAddress,ClientPort属性服务器

    服务器
    服务器= TCPServer属性:ServerAddress: ServerPort“127.0.0.1: 4000联系:1 ClientAddress: ClientPort“127.0.0.1: 65136 NumBytesAvailable: 0显示所有属性,函数

    输出显示服务器成功地接受一个请求客户端客户端建立一个连接服务器

    发送数据到客户端通过编写使用服务器对象。由于客户端连接到服务器,这个数据在客户端可用。读取的数据客户端对象。

    写(服务器,“hello world”,“字符串”)阅读(客户,11日“字符串”)
    ans = " hello world "

    创建一个TCP / IP服务器监听客户端连接请求在指定端口和IP地址。然后读取数据发送到服务器的连接的客户端。

    创建一个TCP / IP服务器侦听连接本地主机和端口4000。

    服务器= tcpserver (“localhost”,4000)
    服务器= TCPServer属性:ServerAddress: ServerPort“127.0.0.1: 4000连接:0 ClientAddress:“ClientPort: [] NumBytesAvailable: 0显示所有属性,函数

    创建一个TCP / IP客户端连接到您的服务器对象使用tcpclient。您必须指定相同的IP地址和端口号用于创建服务器

    客户= tcpclient (“localhost”,4000)
    客户= tcpclient属性:地址:“localhost”端口:4000 NumBytesAvailable: 0显示所有属性,函数

    显示的值连接,ClientAddress,ClientPort属性服务器

    服务器
    服务器= TCPServer属性:ServerAddress: ServerPort“127.0.0.1: 4000联系:1 ClientAddress: ClientPort“127.0.0.1: 65440 NumBytesAvailable: 0显示所有属性,函数

    输出显示服务器成功地接受一个请求客户端客户端建立一个连接服务器

    写入数据到TCP / IP客户端。由于客户端连接到服务器,这些数据可以在服务器。阅读第一个五值的字符串数据使用服务器对象。

    写(客户端,“helloworld”,“字符串”)阅读(服务器、5“字符串”)
    ans = "你好"

    如果你读五个价值观,你收到剩下的字符串数据。

    读(服务器5“字符串”)
    ans = "世界"
    介绍了R2021a