modbus_tcp和modbus_rtu对比&移植AT-socket,modbus_tcp&杂记

modbus_rtu通信时没有连接过程,主机和从机各自初始化自身串口就行了,而rtu需要确定从机ID。

注:在TCP连接中,不同的网卡有不同的IP,port对应具体的程序。

cpp 复制代码
/* 先读取数据 */
	for (i = 0; i < len; i++)
	{
		if (pdPASS != xQueueReceive(recv_queue, &buf[i], 0))
			break;
	}

	/* 如果没有数据才等待 
	之所以这样做是因为如果队列有100字节数据,第一次只读10字节的话,下次再读就只能等待重新得到信号量了,因此会造成接收延迟
	*/
	if (i == 0)//说明队列里为空,一个都没读到,这时才阻塞等待
	{
		xSemaphoreTake(ptDev->sockets[socket].at_packet_sem, portMAX_DELAY);
	}

	/* 读取数据 */
	for (; i < len; i++)
	{
		if (pdPASS != xQueueReceive(recv_queue, &buf[i], 0))
			break;
	}
相关推荐
Tim风声(网络工程师)6 小时前
排查内网互联网访问流程
运维·服务器·网络
坚持就完事了7 小时前
Linux中如何添加环境变量
linux·运维·服务器
白緢9 小时前
一、Linux 基础入门
linux·运维·服务器
科技牛牛9 小时前
AI爬虫引爆代理IP产业:一场正在发生的数据粮草争夺战
人工智能·爬虫·tcp/ip·数据安全·ip地址查询
一袋米扛几楼989 小时前
【网络】网络规划与底层通信:自顶向下方法论 (Top-Down Methodology) 全解析
网络·工程
liulilittle10 小时前
TCP BBR 拥塞控制模块编译
网络·网络协议·tcp/ip
随风,奔跑10 小时前
Nginx
服务器·后端·nginx·web
仰望星空的打工人10 小时前
cypht无法获取163、126邮件
服务器·网易邮箱大师
wangl_9210 小时前
Modbus RTU 与 Modbus TCP 深入指南-功能码与数据模型
网络·网络协议·tcp/ip·tcp·modbus·rtu
砍材农夫10 小时前
物联网 MQTT协议和本地socket区别
网络·物联网