网络编程;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文件传输

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

相关推荐
比兔代理1 小时前
静态住宅IP在品牌保护中的角色:稳定出口与长期监测
服务器·网络·ip
傻啦嘿哟1 小时前
某宝商品爬虫:破解反爬的终极方案(含IP代理池+User-Agent轮换)
爬虫·网络协议·tcp/ip
布莱克6051 小时前
如何实现断点续传和分片上传?
网络·tcp/ip·状态模式
哈基咩1 小时前
Function Calling 与 Code Mode:AI Agent 工具调用的原理、对比与选型指南
网络·人工智能
优化Henry1 小时前
5G站点BBU功能模块集成化与偶发案例
运维·网络·学习·5g·tdd
小尘要自信2 小时前
软件远控失效以后怎么办?玩客云 + One-KVM 实现 BIOS 级远程画面与键鼠控制
服务器·网络·数据库
P1Browser2 小时前
指纹浏览器安全吗?从浏览器环境隔离、数据存储到安全风险解析
网络·tcp/ip·安全·网络安全·github·php
2401_895366503 小时前
BGP综合实验
网络
数据知道4 小时前
PHP 代码审计实战——ThinkPHP、Laravel 历史漏洞模式深度剖析
android·网络·web安全·网络安全·php·laravel
rcms152702692184 小时前
HITACHI 560BIR01 1KGT034000R0101 二进制输入模块
网络