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;
	}
相关推荐
IT成长日记6 小时前
【Linux基础】Linux系统管理:GPT分区实践详细操作指南
linux·运维·服务器·gpt·parted·磁盘分区·fdisk
魏 无羡7 小时前
k8s 获取真实ip地址
tcp/ip·容器·kubernetes
eqwaak07 小时前
Matplotlib 动态显示详解:技术深度与创新思考
网络·python·网络协议·tcp/ip·语言模型·matplotlib
不是三毛没有半7 小时前
华为USG6000v2 NAT模式下IPSEC IKE V1 实验
网络·网络安全·华为
人工智能训练师7 小时前
在Ubuntu中如何使用PM2来运行一个编译好的Vue项目
linux·运维·服务器·vue.js·ubuntu·容器
程序媛Dev7 小时前
50.4k Star!我用这个神器,在五分钟内搭建了一个私有 Git 服务器!
运维·服务器·git
Techer_Y7 小时前
云安全服务(参考自腾讯云工程师认证课程)
网络·云计算·腾讯云
cpsvps_net8 小时前
代理连接性能优化:提升网络效率的关键技术与实践
网络·性能优化
KKKlucifer8 小时前
网络安全等级保护:等级保护工作、分级保护工作、密码管理工作三者之间的关系
网络·安全·web安全