主要内容

udpport

连接到UDP套接字

    描述

    udpport对象允许您执行byte-type和datagram-type UDP通信本地主机上使用UDP套接字。

    创建

    描述

    例子

    u = udpportu = udpport(字节)构造一个byte-typeudpport对象u,一个IP地址版本设置为IPV4,绑定到一个UDP套接字。

    u = udpport(“字节”,IPv)构造一个byte-typeudpport对象与一个IP地址指定的版本IPv,它可以是“IPV4”“IPV6”

    例子

    u = udpport(数据报)构造一个datagram-typeudpport对象u版本将IPV4, IP地址。

    u = udpport(“数据报”,IPv)构造一个datagram-type udpport对象与一个IP地址指定的版本IPv,它可以是“IPV4”“IPV6”

    例子

    u = udpport (___,名称,值)构造一个udpport对象和设置对象属性指定使用名称-值对参数。如果您指定一个无效的名称或属性值时,该函数不创建对象。udpport属性,可以使用名称-值对参数设置本地主机,LocalPort,超时,ByteOrder,OutputDatagramSize,EnablePortSharing

    输入参数

    全部展开

    IP地址的版本,指定为“IPV4”“IPV6”

    请注意

    版本的IP地址在您的设置必须是一致的。你不能一个插座IPV4和IPV6地址之间进行通信,反之亦然。

    名称-值对的观点

    指定可选的逗号分隔条名称,值参数。的名字参数名称和吗价值相应的价值。的名字必须出现在引号。您可以指定几个名称和值对参数在任何顺序Name1, Value1,…,的家

    属性名称-值参数的支持万博1manbetx本地主机,LocalPort,超时,ByteOrder,OutputDatagramSize,EnablePortSharing。其中,本地主机,LocalPort,EnablePortSharing后成为只读udpport创建对象。

    例子:“超时”,60

    属性

    全部展开

    字节的共同属性和数据报udpport对象

    这个属性是只读的。

    版本类型为IP地址指定为“IPV4”“IPV6”

    例子:“IPV6”

    数据类型:字符|字符串

    这个属性是只读的。

    本地主机名或十进制IP地址,指定为一个字符或字符串向量。如果你不指定一个值本地主机当您创建的udpport对象,默认值是“0.0.0.0”IPV4,或者“::”IPV6。

    例子:“144.133.0.0”

    数据类型:字符|字符串

    这个属性是只读的。

    港本地主机绑定UDP,指定为一个数值从0到65535。如果你不指定一个值LocalPort当您创建的udpport对象,自动分配一个值。

    例子:50791年

    数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

    连续的字节顺序排列成更大的数值,指定为“低位优先”“大端法”

    例子:“大端法”

    数据类型:字符|字符串

    时间允许读和写操作在几秒钟内,指定为一个双。

    例子:20.

    数据类型:

    最大的字节数的数据写在数据报分组,指定为双值从1到65507。

    例子:512年

    数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

    这个属性是只读的。

    设置为允许其他UDP套接字绑定到的本地端口插座,指定为逻辑真正的(1)或(0)。

    例子:真正的

    数据类型:逻辑

    设置允许广播,指定为逻辑真正的(1)或(0)。

    例子:真正的

    数据类型:逻辑

    这个属性是只读的。

    设置允许多播,指定为逻辑真正的(1)或(0)。

    例子:真正的

    数据类型:逻辑

    这个属性是只读的。

    IP地址组订阅接收多播数据。设置该属性的configureMulticast函数。

    例子:“226.0.0.1”

    数据类型:字符|字符串

    这个属性是只读的。

    表示循环的数据udpport多播,如果发送方订阅相同的多播组,指定为一个逻辑。设置该属性的configureMulticast函数。

    例子:

    数据类型:逻辑

    当一个错误事件发生时,要调用的函数指定为一个函数处理。

    例子:@myErrorFun

    数据类型:function_handle

    这个特定于应用程序的数据udpport实例。这是一个为用户数据,通用属性指定为任何MATLAB®数据类型。例如,您可以使用这个属性来存储数据时触发一个事件从一个回调函数。

    例子:datetime ()

    数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符|字符串|结构体||细胞|function_handle|分类|datetime|持续时间|calendarDuration|fi

    字节udpport对象属性

    这个属性是只读的。

    可以读取的字节数,作为双返回。

    例子:512年

    数据类型:

    这个属性是只读的。

    写入的字节数udpport套接字,作为一个双返回。

    例子:48

    数据类型:

    这个属性是只读的。

    终结者ASCII-terminated字符串沟通,作为一个字符串或数字值返回。如果读和写操作有不同的终端,这些值是哑音单元阵列。要设置这个属性值,可以使用configureTerminator函数。

    例子:“CR / LF”

    数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|字符串|细胞

    这个属性是只读的。

    函数称为一个可用的事件发生时,指定为一个函数处理。要设置这个属性值,可以使用configureCallback函数。

    例子:@myAvailFun

    数据类型:function_handle

    这个属性是只读的。

    需要在输入缓冲区的字节数来触发一个可用的事件,作为一个数值返回。这个属性只适用于当BytesAvailableFcnMode“字节”。要设置这个属性值,可以使用configureCallback函数。

    例子:64年

    数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

    这个属性是只读的。

    条件触发BytesAvailableFcn回调,返回“关闭”,“字节”,或“终结者”。要设置这个属性值,可以使用configureCallback函数。

    例子:“字节”

    数据类型:字符串

    数据报udpport对象属性

    这个属性是只读的。

    返回的数据报可以读取、数的两倍。

    例子:64年

    数据类型:

    这个属性是只读的。

    数量的数据包写入udpport套接字,作为一个双返回。

    例子:8

    数据类型:

    这个属性是只读的。

    函数称为datagrams-available事件发生时,作为一个函数返回句柄。要设置这个属性值,可以使用configureCallback函数。

    例子:@myAvailFcn

    数据类型:function_handle

    这个属性是只读的。

    数量的可用数据报引发datagrams-available事件,作为一个数值返回。这个属性只适用于当BytesAvailableFcnMode“报”。要设置这个属性值,可以使用configureCallback函数。

    例子:16

    数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

    这个属性是只读的。

    条件触发DatagramsAvailableFcn回调,返回“关闭”“报”。要设置这个属性值,可以使用configureCallback函数。

    例子:“报”

    数据类型:字符串

    对象的功能

    byte-type和datagram-type功能udpport接口:

    从UDP套接字读取数据
    UDP套接字写入数据
    configureCallback 设置回调函数和触发条件与UDP套接字通信
    configureMulticast 设置多播属性与UDP套接字通信
    冲洗 清晰的UDP套接字缓冲区

    功能为byte-typeudpport接口只有:

    readline 从UDP套接字读取行ASCII字符串数据
    writeline UDP套接字写的ASCII数据
    configureTerminator 为ASCII字符串与UDP套接字通信设置终结者

    例子

    全部折叠

    这个例子显示了byte-type UDP通信的常见任务。

    构造一个byte-typeudpport对象。

    u = udpport (“IPV4”)
    u = UDPPort属性:IPAddressVersion:“IPV4”LocalHost:“0.0.0.0”LocalPort: 60825 NumBytesAvailable: 0

    写一个向量uint8数据通过udpport套接字到指定的地址和端口。

    写(u, 1:5,“uint8”,“125.0.1.4”,2020);

    读10的值uint16的数据udpport套接字。

    data =阅读(u, 10日“uint16”);

    定义《终结者》,并通过发送一个字符串udpport套接字到指定的地址和端口。

    configureTerminator (u,“CR / LF”);writeline (u,“你好”,“125.0.1.4”,2020);

    读一个ASCII-terminated字符串udpport套接字。

    数据= readline (u);

    订阅一个多播地址组。

    configureMulticast (u,“226.0.0.1”);

    配置回调时触发50字节是可用的。

    configureCallback (u,“字节”现年50岁的@myCallbackFcn);

    刷新输出缓冲区,然后断开和清晰udpport连接。

    冲洗(u,“输出”);清晰的u

    这个例子显示了datagram-type UDP通信的常见任务。

    构造一个datagram-typeudpport对象。

    u = udpport (“报”,“IPV4”)
    u = UDPPort属性:IPAddressVersion:“IPV4”LocalHost:“0.0.0.0”LocalPort: 53465 NumDatagramsAvailable: 0

    写一个向量uint8通过udpport套接字数据到指定的地址和端口。

    写(u, 1:5,“uint8”,“125.0.1.4”,2020);

    读取一个数据报包uint16数据。

    data =阅读(u, 1,“uint16”);

    订阅一个多播地址组。

    configureMulticast (u,“226.0.0.1”);

    配置回调时触发5数据报是可用的。

    configureCallback (u,“报”5、@myCallbackFcn);

    刷新输出缓冲区,然后断开和清晰udpport连接。

    冲洗(u,“输出”);清晰的u

    这个例子展示了数据报大小如何影响数据分割。

    echoudp在端口3030,然后创建一个datagram-typeudpport对象与一个OutputDatagramSize的5。

    echoudp (“上”,3030);u = udpport (“报”,“OutputDatagramSize”5);

    发送20个字节的uint8数据echoudp端口。

    写(u, 1:20,“uint8”,“127.0.0.1”,3030);

    因为OutputDatagramSize设置为5,20字节4数据报发送数据包,每一个包含5个字节的数据。

    验证4从服务器接收数据报是回声。

    u.NumDatagramsAvailable
    ans = 4

    阅读4从服务器接收数据报回声。

    data =阅读(u, u.NumDatagramsAvailable,“uint8”)
    data = 1×4数据报数组属性:数据SenderAddress SenderPort

    第一个数据报包含1 - 5(5字节)的值,第二个6 - 10,11 - 15号的第三和第四个16 - 20。

    第三个数据报。

    数据(3)
    ans =数据报的属性:数据:[11 12 13 14 15]SenderAddress: SenderPort“127.0.0.1: 3030

    允许多个udpport对象共享相同的本地端口。

    创建一个udpport对象绑定到LocalPort3030年。

    u1 = udpport (“LocalPort”,3030,“EnablePortSharing”,真正的);

    创建一个单独的udpport对象使用相同的端口。

    u2 = udpport (“LocalPort”,3030,“EnablePortSharing”,真正的);

    EnablePortSharing必须真正的对于这两个udpport对象。

    另请参阅

    功能

    介绍了R2020b