今天在工作时遇到一桩任务,把matlab与FSP频谱仪通信的代码换成VC++的,当时我还一惊讶,matlab还能写通信程序,matlab真的很牛叉啊。
一开始我还以为是UDP通信的,写了个例子程序,发现频谱仪根本不鸟我。。。
改用TCP,代码片段如下:
if((soc=socket(AF_INET,SOCK_STREAM,0))<=0) { printf("create socket failed\n"); return -1; } addr.sin_family=AF_INET; addr.sin_addr.S_un.S_addr=inet_addr("192.168.0.19");//频谱仪的ip addr.sin_port=htons(5025);//频谱仪的端口号 connect(soc,(struct sockaddr*)&addr,sizeof(addr)); send(soc,":INIT:CONT OFF\n",strlen(":INIT:CONT OFF\n")+1,0);//:INIT:CONT OFF命令是抓取频谱仪显示界面,即暂停显示画面 closesocket(soc);
原文地址:http://blog.csdn.net/wdkirchhoff/article/details/42438617