【通信协议讲解】单片机基础重点通信协议解析与总结之ModBus(五)

简介: 【通信协议讲解】单片机基础重点通信协议解析与总结之ModBus(五)

五.ModBus总线

基础特性:

  • 分类:
  • Modbus ASCII:基于串行通信的文本协议。
  • Modbus RTU :基于串行通信的二进制协议。
  • Modbus TCP/IP:基于以太网的协议。(TCP/IP 协议栈)
  • Modbus-PLUS:高速现场总线网络。
  • 一主多从,可以有多达247个从设备

配置特性:

功能码:公共功能码、用户定义功能码和保留功能码。

0 类功能码:最常用功能码

3 读取多寄存器

16 写入多寄存器

1 类功能码:

1 读取线圈

2 读取离散量输入

4 读取输入寄存器

5 写入单个线圈

6 写入单个寄存器

7 读取异常状态(仅限串行)

2 类功能码:

15 写入多个线圈

20 读取文件记录

21 写入文件记录

22 屏蔽写入寄存器

23 读取/写入多个寄存器

24 读取

时序特性:

数据格式:固定长度,由地址、功能码、数据和一个错误校验字段组成。

帧结构 = 地址 + 功能码+ 数据 + 校验

地址域:1 字节,即从机设备地址,通常 1-247 为有效地址,0 为广播地址

功能码:1 字节,表明主机请求数据的类型。

数据:N 字节,包含寄存器地址和寄存器数据等。

差错校验:对数据进行冗余校验的结果,CRC 或 LRC。





相关文章
|
1月前
|
IDE 开发工具
【通信协议讲解】单片机基础重点通信协议解析与总结之CAN(四)
【通信协议讲解】单片机基础重点通信协议解析与总结之CAN(四)
|
1月前
【通信协议讲解】单片机基础重点通信协议解析与总结之串口通信(三)
【通信协议讲解】单片机基础重点通信协议解析与总结之串口通信(三)
|
1月前
【通信协议讲解】单片机基础重点通信协议解析与总结之SPI(二)
【通信协议讲解】单片机基础重点通信协议解析与总结之SPI(二)
|
1月前
【通信协议讲解】单片机基础重点通信协议解析与总结之IIC(一)
【通信协议讲解】单片机基础重点通信协议解析与总结之IIC(一)
|
1月前
|
缓存 Java 程序员
Map - LinkedHashSet&Map源码解析
Map - LinkedHashSet&Map源码解析
66 0
|
1月前
|
算法 Java 容器
Map - HashSet & HashMap 源码解析
Map - HashSet & HashMap 源码解析
52 0
|
1月前
|
存储 Java C++
Collection-PriorityQueue源码解析
Collection-PriorityQueue源码解析
59 0
|
1月前
|
安全 Java 程序员
Collection-Stack&Queue源码解析
Collection-Stack&Queue源码解析
78 0
|
1天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
9 2
|
1天前
|
存储 安全 Linux
Golang的GMP调度模型与源码解析
【11月更文挑战第11天】GMP 调度模型是 Go 语言运行时系统的核心部分,用于高效管理和调度大量协程(goroutine)。它通过少量的操作系统线程(M)和逻辑处理器(P)来调度大量的轻量级协程(G),从而实现高性能的并发处理。GMP 模型通过本地队列和全局队列来减少锁竞争,提高调度效率。在 Go 源码中,`runtime.h` 文件定义了关键数据结构,`schedule()` 和 `findrunnable()` 函数实现了核心调度逻辑。通过深入研究 GMP 模型,可以更好地理解 Go 语言的并发机制。

热门文章

最新文章

推荐镜像

更多