二进制和ASCII数据与服务器通信使用TCP / IP
这个例子展示了如何设置一个回声服务器和使用TCP / IP通过创建一个与它tcpclient
对象。二进制数据和终止字符串数据发送到服务器和服务器回应相同的数据返回到客户机。
设置TCP / IP回声服务器和客户端
创建一个TCP / IP回显服务器在端口4500上。
echotcpip (“上”,4500);
创建一个tcpclient
对象和连接到服务器。指定的远程主机“localhost”
连接到服务器回声。指定相同的远程端口号用于回声服务器。
t = tcpclient (“localhost”,4500)
t = tcpclient属性:地址:“localhost”端口:4500 NumBytesAvailable: 0显示所有属性,函数
使用字节读写二进制数据回调模式
创建一个回调函数readDataFcn
每次读取数据指定的字节的数据是可用的。存储中读取数据用户数据
的属性tcpclient
对象。看到readDataFcn
函数结束时,这个例子。
设置回调函数触发每次收到10个字节的数据。
configureCallback (t)“字节”10 @readDataFcn);
回显服务器发送10个字节的数据。
sendData = 1:10;写(t, sendData“uint8”);
回显服务器发送二进制数据回TCP / IP客户端。
暂停1秒钟允许回调函数readDataFcn
完成其操作。
暂停(1);
阅读中存储二进制数据用户数据
房地产和显示它。
data = t.UserData
data =1×10 uint8行向量1 2 3 4 5 6 7 8 9 10
这个数据匹配的数据写回显服务器。
使用终结者读写ASCII数据回调模式
创建一个回调函数readASCIIFcn
每次读取数据数据中找到终结者。存储中读取数据用户数据
的属性tcpclient
对象。看到readASCIIFcn
函数结束时,这个例子。
设置回调函数读取终止的字符串数据。触发回调的时候收到一个终结者的数据。
configureCallback (t)“终结者”,@readASCIIFcn);
设置《终结者》
属性值对“如果”
。
configureTerminator (t)“如果”);
发送字符串数据回显服务器使用writeline
。终结者角色“如果”
自动附加到这个字符串数据。
writeline (t)“这回声字符串。”);
回声ASCII数据服务器发送回TCP / IP客户端。
暂停1秒钟允许回调函数readASCIIFcn
完成其操作。
暂停(1);
阅读中存储ASCII数据用户数据
房地产和显示它。
textData = t.UserData
textData = "回声这个字符串。”
这个数据匹配的数据写回显服务器。
明确的联系
停止服务器和清晰的回响tcpclient
对象。
echotcpip (“关闭”);清晰的t
回调函数
回调函数来读取二进制数据
这个函数调用读
阅读BytesAvailableFcnCount
的字节数的数据。这个数据是由服务器回响。
函数readDataFcn src (src ~)。用户数据= read(src,src.BytesAvailableFcnCount,“uint8”);结束
回调函数读取ASCII数据
这个函数调用readline
最初读ASCII数据发送的tcpclient
对象。数据由服务器回响。
函数readASCIIFcn src (src ~)。用户数据= readline (src);结束