网络编程;TCP控制机械臂;UDP文件传输;0910;ps今天没写出来

思维导图


TCP机械臂控制

复制代码
#include<myhead.h>
#define SER_IP "172.20.10.8" //服务器ip地址 写我的win地址
#define SER_PORT 8888	       //服务器端口号
#define CIL_IP "172.20.10.3" //客户端ip地址 写ubuntu的win地址
#define CIL_PORT 7777	       //客户端口号
int main()
{
	//1.创建用于通信的套接子文件描述符
	int cfd = socket(AF_INET,SOCK_STREAM,0);
	if(cfd == -1)
	{
		perror("socket error");
		return -1;
	} 
	//应该需要加一个 套接字属性的设置 端口可以立即使用
	int reuse=1;
	if(setsockopt(cfd,SOL_SOCKET,SO_REUSEADDR,&reuse,sizeof(reuse))==-1)
	{
		perror("setsockopt error");
		return -1;
	}
	//2.给客户端套接字 绑定ip地址和端口号
	//2.1填充地址信息结构体
	struct sockaddr_in cin;
	cin.sin_family = AF_INET;
	cin.sin_addr.s_addr=inet_addr(CIL_IP);
	cin.sin_port = htons(CIL_PORT);
	//2.2绑定
	if(bind(cfd,(struct sockaddr*)&cin,sizeof(cin))==-1)
	{
		perror("bind error");
		return -1;
	}
	//3.连接服务器
	//3.1组装对端地址信息结构体
	struct sockaddr_in sin;
	sin.sin_family = AF_INET;	//通信域
	sin.sin_addr.s_addr = inet_addr(SER_IP);//要连接的服务器ip
	sin.sin_port = htons(SER_PORT);//服务器的端口号
	//3.2连接操作
	if(connect(cfd,(struct sockaddr*)&sin,sizeof(sin))==-1)
	{
		perror("connect error");
		return -1;
	}

	char rbuf[5] = {0xff,0x02,0x00,0xff}; //红色臂初始位置
	unsigned char bbuf[5]={0xff,0x02,0x01,0xff};//蓝色臂初始位置

	//将上面的数据分别发送给服务器
	send(cfd,rbuf,sizeof(rbuf),0);
	send(cfd,bbuf,sizeof(bbuf),0);

	//4.数据通信
	char buf[128]="";//应该是 往buff里输入wasd ,进行判断
	while(1)
	{
		//要回顾一些io
		//不太回 回忆不起来
		printf("输入移动:");
		scanf("%s",&buf);
		if(strcmp(buf,"w")==0)
		{
		rbuf[3]+=2;//然后在这个循环里面改变 rbuf和bbuf的 
			   //再把位置信息发送到机械臂
		}
	}



	//5.关闭套接字
	close(cfd);

	return 0;
}

UDP文件传输

没写出来 状态不佳 明天继续吧

相关推荐
x_x-F14 分钟前
深入浅出 Linux 网络核心:sk_buff 的内存与指针流转
linux·运维·网络
专注_每天进步一点点12 小时前
SLB(绑定弹性公网ip)-gateway-业务pod,gateway上出现reset by peer,业务pod上没有reset by peer
服务器·tcp/ip·gateway
CHANG_THE_WORLD13 小时前
TCP 三次握手彻底解析:SYN、ACK、SEQ、确认号与状态迁移
网络·网络协议·tcp/ip
2501_9151063213 小时前
TraceEagle 代理抓包教程 本机和手机的 HTTPS 抓包方法
网络协议·计算机网络·网络安全·ios·adb·https·udp
DLYSB_14 小时前
基于 HTTP API 与 Modbus 协议的多源监控声光语音联动告警系统设计与实现
网络·网络协议·http·报警灯
Bobolink_15 小时前
手机端和电脑端的网络环境配置有什么不同?
网络·智能手机·电脑·网络环境
星恒讯工业路由器16 小时前
三大工业以太网协议选型对比
网络·物联网·ethercat·profinet·ethernet/ip·工业以太网协议
春卷同学16 小时前
HarmonyOS掌上记账APP开发实践第25篇:Image 组件高级用法 — 资源引用、网络图片与首字符占位方案
网络·华为·harmonyos
mounter62516 小时前
从内存隔离到运行时防线:透视 Linux 内核安全强化的博弈与演进
linux·网络·安全·linux kernel·kernel
Bug退散师18 小时前
多路IO复用[select版TCP服务器与poll版TCP服务器]与常用网络编程函数详解
linux·服务器·c语言·网络·驱动开发·tcp/ip