串行通讯字符格式 起始位(1)+数据位(8)+停止位(1),无奇偶校验位。 串行通讯速率 9600bps 信息帧格式 一帧数据可包含的最大寄存器个数为13个。 主机读从机状态 字节顺序 内容 1 从机地址 2 功能码03H 3 起始寄存器地址高字节 4 起始寄存器地址低字节 5 寄存器个数高字节 6 寄存器个数低字节 7 CRC16校验低字节 8 CRC16校验高字节 从机应答 字节顺序 内容 1 从机地址 2 功能码03H 3 返回数据字节数(寄存器个数N2) 4 第一个寄存器数据高字节 5 第一个寄存器数据低字节 …… …… 第N个寄存器数据高字节 第N个寄存器数据低字节 2N+4 CRC16校验低字节 2N+5 CRC16校验高字节 ### TC6000系列温控器通讯协议详解 #### 1. 串行通讯基本配置 TC6000系列温控器采用的是MODBUS-RTU通讯规约进行数据传输。MODBUS-RTU是一种广泛应用于工业自动化领域的开放式通讯协议标准。此温控器在串行通讯方面采用了以下配置: - **串行通讯字符格式**:采用起始位(1位)、数据位(8位)以及停止位(1位),不使用奇偶校验位,这种配置能够确保数据传输的简洁性和准确性。 - **串行通讯速率**:设定为9600bps,这是一个常见的波特率,适用于大多数工业设备之间的数据交换。 #### 2. 信息帧格式 信息帧是构成MODBUS-RTU通讯的基础单元,对于TC6000系列温控器来说,信息帧的具体格式如下: - **一帧数据包含的最大寄存器个数**:13个。这意味着在一个数据包中最多可以读取或写入13个寄存器的数据,这对于批量读取和修改温控器的状态非常有用。 #### 3. 主机与从机交互流程 - **主机读取从机状态**: - **请求帧**: - 从机地址(1字节):标识目标设备。 - 功能码03H(1字节):表示主机希望读取寄存器数据。 - 起始寄存器地址(2字节):指定要读取的寄存器的起始位置。 - 寄存器个数(2字节):表示希望读取的寄存器数量。 - CRC16校验(2字节):用于数据完整性验证。 - **应答帧**: - 从机地址(1字节):确认响应的设备。 - 功能码03H(1字节):与请求帧中的功能码一致。 - 返回数据字节数(1字节):表示后面跟随着的数据字节数量。 - 寄存器数据(N×2字节):实际读取的寄存器数据。 - CRC16校验(2字节):再次验证数据的完整性。 - **主机设置从机状态**: - **请求帧**: - 从机地址(1字节):指定接收命令的设备。 - 功能码10H(1字节):表示主机将对从机进行写操作。 - 起始寄存器地址(2字节):指定要写入的寄存器的起始位置。 - 寄存器个数(2字节):表示要写入的寄存器数量。 - 数据字节数(1字节):表示后面跟随的数据字节数量。 - 寄存器数据(N×2字节):具体要写入的数据。 - CRC16校验(2字节):数据完整性校验。 - **应答帧**: - 从机地址(1字节):确认接收命令的设备。 - 功能码10H(1字节):与请求帧中的功能码一致。 - 起始寄存器地址(2字节):确认被写入的寄存器的起始位置。 - 寄存器个数(2字节):确认被写入的寄存器数量。 - CRC16校验(2字节):再次验证数据的完整性。 - **错误帧**(当主机请求无法正确处理时,从机会发送错误帧作为应答): - 从机地址(1字节):标识发送错误响应的设备。 - 功能码+80H(1字节):表示错误响应。 - 错误代码(1字节):具体错误类型。 - CRC16校验(2字节):验证数据完整性。 #### 4. 错误代码定义 - **1**:从机无法识别的功能代码。 - **2**:从机无法识别的寄存器地址。 - **3**:从机无法识别的数据。 #### 5. 数据寄存器定义 - **寄存器地址0**:故障状态,用于指示当前是否出现故障及其类型。 - **寄存器地址1**:室内温度,存储当前室内的温度值(单位为0.1℃)。 - **寄存器地址2**:开关机状态,用于控制温控器的启停。 - **寄存器地址3**:设定温度,允许用户设定期望的室内温度(单位为0.1℃)。 - **寄存器地址4**:工作模式,用户可以通过此寄存器选择不同的工作模式,如自动、辅助加热等。 - **寄存器地址5**:风机状态,用户可以设置风机的工作状态,包括不同速度档位或自动控制。 - **寄存器地址7**:睡眠功能,允许用户开启或关闭睡眠模式。 - **寄存器地址8**:防冻功能,用于控制是否启用防冻保护。 - **寄存器地址9**:星期,用户可以设置当前日期对应的星期。 - **寄存器地址10**:时钟,允许用户设置当前的时间。 - **寄存器地址13**:温度补偿,用于微调温度测量值。 - **寄存器地址14**:风机受控状态,允许用户控制风机是否受到其他控制信号的影响。 - **寄存器地址15**:键盘锁定状态,允许用户锁定键盘以防止意外操作。 - **寄存器地址19**:显示选项,用户可以选择显示时间或设定温度。 - **寄存器地址20**:温度单位设置,允许用户选择使用摄氏度或华氏度。 以上就是TC6000系列温控器的通讯协议及其相关知识点的详细介绍。通过这些信息,开发人员可以更好地理解如何与温控器进行有效的数据交换,从而实现远程监控和管理的目的。
剩余6页未读,继续阅读
- 粉丝: 0
- 资源: 5
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Rive在Android上的简单应用
- 施工人员检测20-YOLO(v5至v9)、COCO、CreateML、Darknet、Paligemma、TFRecord、VOC数据集合集.rar
- 爬虫专栏第五篇:Python BeautifulSoup 库全解析:从解析器到网页数据爬取实战
- 【数据库实验】存储过程素材
- (全新整理)全球各国-经济制度距离(2005-2022年)
- 跨Vlan通信解决办法-单臂路由
- 施工人员检测20-COCO数据集.rar
- 金蝶K3凭证生成[适用于K3和金蝶KIS云·旗舰版]
- 施工人员检测2-YOLO(v5至v9)、COCO、CreateML、Darknet、Paligemma、TFRecord、VOC数据集合集.rar
- gn源码工程中快速入门的demo