MODBUS通讯协议详情及编程_第1页
MODBUS通讯协议详情及编程_第2页
MODBUS通讯协议详情及编程_第3页
MODBUS通讯协议详情及编程_第4页
MODBUS通讯协议详情及编程_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实用标准MODBUS 通讯协议及编程ModBus 通讯协议分为 RTU 协议和 ASCII 协议,我公司的多种仪表都采用 ModBus R TU 通讯协议,如: YD2000 智能电力监测仪、巡检表、数显表、光柱数显表等。下面就 M odBus RTU 协议简要介绍如下:一、通讯协议(一)、通讯传送方式 : 通讯传送分为独立的信息头, 和发送的编码数据。 以下的通讯传送方式定义也与 MODBUS RTU 通讯规约相兼容:编码8 位二进制起始位1位数据位8位奇偶校验位1 位(偶校验位)停止位1位错误校检CRC(冗余循环码)初始结构 =4 字节的时间地址码 =1字节功能码 =1字节数据区 =N字节

2、错误校检=16 位 CRC 码结束结构=4 字节的时间地址码 :地址码为通讯传送的第一个字节。 这个字节表明由用户设定地址码的从机将 接收由主机发送来的信息。并且每个从机都有具有唯一的地址码,并且响应回送均以各自 的地址码开始。 主机发送的地址码表明将发送到的从机地址,而从机发送的地址码表明回 送的从机地址。功能码 :通讯传送的第二个字节。 ModBus 通讯规约定义功能号为 1 到 127。本仪表 只利用其中的一部分功能码。作为主机请求发送,通过功能码告诉从机执行什么动作。 作 为从机响应,从机发送的功能码与从主机发送来的功能码一样,并表明从机已响应主机进 行操作。 如果从机发送的功能码的最

3、高位为 (比如功能码大与此同时 127) ,则表明从机 没有响应操作或发送出错。数据区 :数据区是根据不同的功能码而不同。数据区可以是实际数值、设置点、主机 发送给从机或从机发送给主机的地址。CRC 码 :二字节的错误检测码。(二)、通讯规约:当通讯命令发送至仪器时,符合相应地址码的设备接通讯命令,并除去地址码,读 取信息,如果没有出错,则执行相应的任务;然后把执行结果返送给发送者。返送的信息文案大全实用标准 中包括地址码、执行动作的功能码、执行动作后结果的数据以及错误校验码。 如果出错就 不发送任何信息。1信息帧结构地址码功能码数据区错误校验码8位8位N 8 位16位地址码 :地址码是信息帧

4、的第一字节 (8位),从 0到 255。这个字节表明由用户设置地 址的从机将接收由主机发送来的信息。每个从机都必须有唯一的地址码,并且只有符合地 址码的从机才能响应回送。当从机回送信息时,相当的地址码表明该信息来自于何处。功能码 :主机发送的功能码告诉从机执行什么任务。 表 1-1 列出的功能码都有具体的 含义及操作。代码含义操作03读取数据读取当前寄存器一个或多个二进制值06重置单一寄存器把设置的二进制值写入单一寄存器数据区 :数据区包含需要从机执行什么动作或由从机采集的返送信息。这些信息可以 是数值、参考地址等等。例如, 功能码告诉从机读取寄存器的值,则数据区必需包含要读 取寄存器的起始地

5、址及读取长度。 对于不同的从机,地址和数据信息都不相同。错误校验码 :主机或从机可用校验码进行判别接收信息是否出错。有时,由于电子噪 声或其它一些干扰,信息在传输过程中会发生细微的变化,错误校验码保证了主机或从机 对在传送过程中出错的信息不起作用。这样增加了系统的安全和效率。错误校验采用 CR C-16 校验方法。注:信息帧的格式都基本相同:地址码、功能码、数据区和错误校验码。2错误校验冗余循环码( CRC)包含 2个字节,即 16 位二进制。 CRC 码由发送设备计算,放置 于发送信息的尾部。接收信息的设备再重新计算接收到信息的 CRC 码,比较计算得到的 CRC 码是否与接收到的相符,如果

6、两者不相符,则表明出错。CRC 码的计算方法是, 先预置 16 位寄存器全为 1。再逐步把每 8位数据信息进行处理。 在进行 CRC 码计算时只用 8 位数据位,起始位及停止位,如有奇偶校验位的话也包括奇 偶校验位,都不参与 CRC 码计算。在计算 CRC 码时, 8 位数据与寄存器的数据相异或,得到的结果向低位移一字节, 用 0 填补最高位。再检查最低位,如果最低位为1,把寄存器的容与预置数相异或,如果最低位为 0,不进行异或运算。这个过程一直重复 8次。第 8 次移位后,下一个 8位再与现在寄存器的容相相异或, 这个过程与以上一样重复 8 次。当所有的数据信息处理完后,最后寄存器的容即为

7、CRC 码值。 CRC 码中的数据发送、接收时低字节在前。计算 CRC 码的步骤为:文案大全实用标准预置 16 位寄存器为十六进制 FFFF(即全为 1)。称此寄存器为 CRC 寄存器; 把第一个 8 位数据与 16 位 CRC 寄存器的低位相异或,把结果放于CRC 寄存器;把寄存器的容右移一位 (朝低位 ),用 0 填补最高位,检查最低位; 如果最低位为 0:重复第 3 步 (再次移位 ); 如果最低位为 1: CRC 寄存器与多项式 A 001( 1010 0000 0000 0001)进行异或;重复步骤 3 和 4,直到右移 8 次,这样整个 8 位数据全部进行了处理;重复步骤 2 到步

8、骤 5,进行下一个 8 位数据的处理;最后得到的 CRC 寄存器即为 CRC 码。3功能码 03,读取点和返回值:仪表采用 Modbus RTU 通讯规约,利用通讯命令,可以进行读取点(“保持寄存器” )或返回值 (“输入寄存器” )的操作。保持和输入寄存器都是 16 位( 2 字节)值,并且高位 在前。这样用于仪表的读取点和返回值都是2 字节。一次最多可读取寄存器数是60。由于一些可编程控制器不用功能码 03,所以功能码 03 被用作读取点和返回值。从机响应的命 令格式是从机地址、功能码、数据区及 CRC 码。数据区中的寄存器数据都是每两个字节 高字节在前。4功能码 06,单点保存 主机利用

9、这条命令把单点数据保存到仪表的存储器。从机也用这个功能码向主机返送 信息。二、编程举例下面是一个用 VC 编写的 ModBus RTU 通讯的例子(一)、通讯口设置DCB dcb;hCom=CreateFile(COM1,GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL);if(hCom=INVALID_HANDLE_VALUE)MessageBox(createfile error,error);BOOL error=SetupComm(hCom,1024,1024);if(!error)MessageBox(setupcomm e

10、rror); error=GetCommState(hCom,&dcb); if(!error)MessageBox(getcommstate,error); dcb.BaudRate=2400;dcb.ByteSize=8;文案大全实用标准dcb.Parity=EVENPARITY;/NOPARITY; dcb.StopBits=ONESTOPBIT; error=SetCommState(hCom,&dcb); (二)、 CRC 校验码计算 UINT crc void calccrc(BYTE crcbuf) BYTE i; crc=crc crcbuf; for(i=0;i1; crc=

11、crc&0x7fff; if (TT=1) crc=crc0xa001;crc=crc&0xffff;(三) 、数据发送zxaddr=11;/ 读取地址为 11 的巡检表数据zxnum=10;/ 读取十个通道的数据writebuf20=zxaddr;writebuf21=3;writebuf22=0;writebuf23=0;writebuf24=0;writebuf25=zxnum;crc=0xffff;calccrc(writebuf20);calccrc(writebuf21);calccrc(writebuf22);calccrc(writebuf23);calccrc(writebu

12、f24);calccrc(writebuf25);writebuf26=crc & 0xff; writebuf27=crc/0x100;WriteFile(hCom,writebuf2,8,&comnum,NULL);(四) 、数据读取ReadFile(hCom,writebuf,5+zxnum*2,&comnum,NULL);/ 读取 zxnum 个通道数据 可增加错误处理程序,如地址码错误、 CRC 码错误判断、通讯故障处理等。文案大全实用标准MODBUS 通讯协议简介一、概述Modbus 协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例 如以太网)

13、和其它设备之间可以通信。它已经成为一通用工业标准。有了它,不同厂商生产的控制设备可以 连成工业网络,进行集中监控。此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。 它描述了一控制器请求访问其它设备的过程,如果回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局 和容的公共格式。当在一 Modbus 网络上通信时, 此协议决定了每个控制器须要知道它们的设备地址, 识别按地址发来的消息, 决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用 Modbus 协议发出。在其它网络上,包含 了 Modbus 协议的消息转换为在此网络上使用的帧或包结构。

14、 这种转换也扩展了根据具体的网络解决节地址、 路由路径及错误检测的方法。1、在 Modbus 网络上转输标准的 Modbus 口是使用一 RS-232C 兼容串行接口,它定义了连接口的针脚、电缆、信号位、传输波特率、 奇偶校验。控制器能直接或经由 Modem 组网。控制器通信使用主从技术,即仅一设备(主设备)能初始 化传输(查询) 。其它设备(从设备)根据主设备查询提供的数据作出相应反应。典型的主设备:主机和可 编程仪表。典型的从设备:可编程控制器。主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回一消息作为回 应,如果是以广播方式查询的,则不作任何回应。 Mo

15、dbus 协议建立了主设备查询的格式:设备(或广播) 地址、功能代码、所有要发送的数据、一错误检测域。从设备回应消息也由 Modbus 协议构成,包括确认要行动的域、任何要返回的数据、和一错误检测域。如果 在消息接收过程中发生一错误,或从设备不能执行其命令,从设备将建立一错误消息并把它作为回应发送出 去。2、在其它类型网络上转输 在其它网络上,控制器使用对等技术通信,故任何控制都能初始和其它控制器的通信。这样在单独的通信过 程中,控制器既可作为主设备也可作为从设备。提供的多个部通道可允许同时发生的传输进程。在消息位, Modbus 协议仍提供了主从原则,尽管网络通信方法是“对等”。如果一控制器

16、发送一消息,它只是作为主设备,并期望从从设备得到回应。同样,当控制器接收到一消息,它将建立一从设备回应格式并 返回给发送的控制器。Modbus 是 Modicon 公司为其 PLC 与主机之间的通讯而发明的串行通讯协议。其物理层采用RS232、485 等异步串行标准。由于其开放性而被大量的PLC 及 RTU 厂家采用。Modbus 通讯方式采用主从方式的查询相应机制,只有主站发出查询时,从站才能给出响应,从站不能主 动发送数据。 主站可以向某一个从站发出查询, 也可以向所有从站广播信息。 从站只响应单独发给它的查询, 而不响应广播消息。Modbus 的串行口的通讯参数(如波特率、奇偶校验)可由

17、用户选择。二、 MODBUS 协议传送方式 MODBUS 通讯协议有两种传送方式 :RTU 方式和 ASCII 方式 ,两种方式如下所示 :项目 RTU 方式 ASCII 方式字节长度 8 BITS 7 BITS奇偶校验 1 BIT OR 0 BIT 1 BIT OR 0 BIT字节中止 1 BIT OR 2 BITS 1 BIT OR 2 BITS开始标记 不要 :(冒号 )结束标记 不要 CR,LF数据间隔 24 BIT 1S文案大全实用标准出错检验方式 CRC-16 LRC三、 MODBUS 指令字符串格式 :下面以 WT301 模拟量数据采集器为例讲解 04 命令;主机命令:从机地址

18、功能码 数据起始地址 数据量 冗余校验从机地址: ( WT306 通讯控制器可以设置 #1-#4 从机地址)MODBUS 通讯是主从式通讯, WT306 通讯控制器采用的是从机的设置,通过面板上的跳线开关设置;功能码: (模拟量信号采用功能码 04)功能码 定义04 READ INPUT REGISTERS数据地址:数据地址 定义3XXXX INPUT REGISTERS从机响应:从机地址 功能码 数据字节量 数据量 数据 1 数据 2 数据 3 。 数据 n 冗余校验从机地址:MODBUS 通讯是主从式通讯, WT306 通讯控制器采用的是从机的设置,通过面板上的跳线开关设置; 功能码: (

19、WT301 数据采集器总采用功能码 04)功能码 定义04 READ INPUT REGISTERS数据字节量:如温度、压力等模拟量每一个变量占用2字节; WT306 通讯控制器允许最大数据字节量为256字节,即 128点数据;文案大全实用标准Modbus 通讯协议入门作者:未知 文章来源:华文论坛 . 点击数: 6030一、Modbus 协议简介Modbus 协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控 制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为一通用工业标准。有了它, 不同厂商生产的控制设备可以连成工业网络,进行集中监控。此协议定义了一个控制器能

20、认识 使用的消息结构 ,而不管它们是经过何种网络进行通信的。 它描述了一控制器请求访问其它设备 的过程,如果回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和容 的公共格式。当在一 Modbus 网络上通信时,此协议决定了每个控制器须要知道它们的设备地 址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并 用 Modbus协议发出。在其它网络上,包含了 Modbus协议的消息转换为在此网络上使用的帧或 包结构。这种转换也扩展了根据具体的网络解决节地址、路由路径及错误检测的方法。1、在 Modbus网络上转输 标准的 Modbus 口是使用一 RS

21、-232C兼容串行接口,它定义了连接 口的针脚、电缆、信号位、传输波特率、奇偶校验。控制器能直接或经由 Modem 组网。控制器 通信使用主 -从技术,即仅一设备(主设备)能初始化传输(查询) 。其它设备(从设备)根据 主设备查询提供的数据做出相应反应。典型的主设备:主机和可编程仪表。典型的从设备:可 编程控制器。 主设备可单独和从设备通信, 也能以广播方式和所有从设备通信。 如果单独通信, 从设备返回一消息作为回应, 如果是以广播方式查询的, 则不作任何回应。 Modbus 协议建立了 主设备查询的格式:设备(或广播)地址、功能代码、所有要发送的数据、一错误检测域。从 设备回应消息也由 Mo

22、dbus 协议构成,包括确认要行动的域、任何要返回的数据、和一错误检 测域。如果在消息接收过程中发生一错误,或从设备不能执行其命令,从设备将建立一错误消 息并把它作为回应发送出去。2、在其它类型网络上转输 在其它网络上,控制器使用对等技术通信,故任何控制都能初始和 其它控制器的通信。这样在单独的通信过程中,控制器既可作为主设备也可作为从设备。提供 的多个部通道可允许同时发生的传输进程。在消息位, Modbus 协议仍提供了主 -从原则,尽管 网络通信方法是 对等 。如果一控制器发送一消息,它只是作为主设备并期望从设备得到回应。 同样,当控制器接收到一消息,它将建立一从设备回应格式并返回给发送的

23、控制器。3、查询 -回应周期( 1)查询 查询消息中的功能代码告之被选中的从设备要执行何种功能。数 据段包含了从设备要执行功能的任何附加信息。 例如功能代码 03 是要求从设备读保持寄存器并 返回它们的容。 数据段必须包含要告之从设备的信息: 从何寄存器开始读及要读的寄存器数量。 错误检测域为从设备提供了一种验证消息容是否正确的方法。 (2)回应 如果从设备产生一正常 的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应。数据段包括了从设备收 集的数据:象寄存器值或状态。如果有错误发生,功能代码将被修改以用于指出回应消息是错 误的,同时数据段包含了描述此错误信息的代码。 错误检测域允许

24、主设备确认消息容是否可用。二、两种传输方式 控制器能设置为两种传输模式 (ASCII 或 RTU)中的任何一种在标准的 Modbus 网络通信。用户选择想要的模式,包括串口通信参数(波特率、校验方式等) ,在配置每个控制 器的时候,在一个 Modbus 网络上的所有设备都必须选择相同的传输模式和串口参数。1.ASCII 模式地址 功能代码 数据数量 数据 1 . 数据 n LRC 高字节 LRC 低字节 回车 换行2.RTU模式地址 功能代码 数据数量 数据 1 . 数据 n CRC高字节 CRC低字节 所选的 ASCII 文案大全实用标准或 RTU 方式仅适用于标准的 Modbus 网络,它

25、定义了在这些网络上连续传输的消息段的每一位, 以及决定怎样将信息打包成消息域和如何解码。三、Modbus消息帧 两种传输模式中( ASCII 或 RTU),传输设备以将 Modbus消息转为有起点 和终点的帧,这就允许接收的设备在消息起始处开始工作,读地址分配信息,判断哪一个设备 被选中(广播方式则传给所有设备) ,判知何时信息已完成。 部分的消息也能侦测到并且错误能 设置为返回结果。1、ASCII 帧 使用 ASCII 模式,消息以冒号( :)字符( ASCII 码 3AH )开始,以回车换行符结 束( ASCII 码 0DH,0AH )。其它域可以使用的传输字符是十六进制的 0.9,A.F

26、。网络上的设备 不断侦测 :字符,当有一个冒号接收到时,每个设备都解码下个域(地址域)来判断是否发给 自己的。消息中字符间发送的时间间隔最长不能超过 1 秒,否则接收的设备将认为传输错误。 一个典型消息帧如下所示:起始位 设备地址 功能代码 数据 LRC 校验 结束符 1个字符 2 个字 符 2个字符 n个字符 2个字符 2个字符图 2 ASCII 消息帧2、RTU帧 使用 RTU模式,消息发送至少要以 3.5个字符时间的停顿间隔开始。在网络波特率 下多样的字符时间, 这是最容易实现的 (如下图的 T1-T2-T3-T4 所示 )。传输的第一个域是设备地 址。可以使用的传输字符是十六进制的 0

27、.9,A.F。网络设备不断侦测网络总线,包括停顿间隔 时间。当第一个域(地址域)接收到,每个设备都进行解码以判断是否发往自己的。在最后一 个传输字符之后,一个至少 3.5 个字符时间的停顿标定了消息的结束。一个新的消息可在此停 顿后开始。整个消息帧必须作为一连续的流转输。如果在帧完成之前有超过 1.5 个字符时间的 停顿时间,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域。同样地,如 果一个新消息在小于 3.5 个字符时间接着前个消息开始,接收的设备将认为它是前一消息的延 续。这将导致一个错误, 因为在最后的 CRC 域的值不可能是正确的。 一典型的消息帧如下所示: 起始位 设备

28、地址 功能代 码 数 据 CRC 校 验 结束符 T1-T2-T3-T4 8Bit n 个 8Bit 16Bit T1-T2-T3-T4 3、地址域 消息帧的地址域包含两个字符( ASCII)或 8Bit (RTU)。可能的从设 备地址是 0.247 (十进制 )。单个设备的地址围是 1.247。主设备通过将要联络的从设备的地址 放入消息中的地址域来选通从设备。当从设备发送回应消息时,它把自己的地址放入回应的地 址域中,以便主设备知道是哪一个设备做出回应。地址 0 是用作广播地址,以使所有的从设备 都能认识。当 Modbus 协议用于更高水准的网络,广播可能不允许或以其它方式代替。4、如何处理

29、功能域 消息帧中的功能代码域包含了两个字符( ASCII )或 8Bits(RTU)。可能的代码 围是十进制的 1.255。当然,有些代码是适用于所有控制器,有此是应用于某种控制器,还有 些保留以备后用。 当消息从主设备发往从设备时, 功能代码域将告之从设备需要执行哪些行为。 例如去读取输入的开关状态,读一组寄存器的数据容,读从设备的诊断状态,允许调入、记录、 校验在从设备中的程序等。当从设备回应时,它使用功能代码域来指示是正常回应(无误 )还是有某种错误发生(称作异议回应) 。对正常回应,从设备仅回应相应的功能代码。对异议回应, 从设备返回一等同于正常代码的代码,但最重要的位置为逻辑1。例如

30、:一从主设备发往从设备的消息要求读一组保持寄存器,将产生如下功能代码: 0 0 0 0 0 0 1 1( 十六进制 03H) 对正 常回应,从设备仅回应同样的功能代码。 对异议回应,它返回: 1 0 0 0 0 0 1 1( 十六进制 83H) 除功能代码因异议错误作了修改外,从设备将一独特的代码放到回应消息的数据域中,这能告 诉主设备发生了什么错误。主设备应用程序得到异议的回应后,典型的处理过程是重发消息, 或者诊断发给从设备的消息并报告给操作员。 5、数据域 数据域是由两个十六进制数集合构成 的,围 00.FF。根据网络传输模式, 这可以是由一对 ASCII 字符组成或由一 RTU 字符组

31、成。 从 主设备发给从设备消息的数据域包含附加的信息:从设备必须用于进行执行由功能代码所定义 的所为。这包括了象不连续的寄存器地址,要处理项的数目,域中实际数据字节数。例如,如 果主设备需要从设备读取一组保持寄存器(功能代码03),数据域指定了起始寄存器以及要读文案大全实用标准的寄存器数量。如果主设备写一组从设备的寄存器(功能代码10 十六进制),数据域则指明了要写的起始寄存器以及要写的寄存器数量,数据域的数据字节数,要写入寄存器的数据。 如果 没有错误发生,从从设备返回的数据域包含请求的数据。如果有错误发生,此域包含一异议代 码,主设备应用程序可以用来判断采取下一步行动。 在某种消息中数据域

32、可以是不存在的( 0 长度)。例如,主设备要求从设备回应通信事件记录(功能代码 0B 十六进制),从设备不需任 何附加的信息。 6、错误检测域 标准的 Modbus 网络有两种错误检测方法。错误检测域的容视 所选的检测方法而定。 ASCII 当选用 ASCII 模式作字符帧,错误检测域包含两个 ASCII 字符。 这是使用 LRC(纵向冗长检测) 方法对消息容计算得出的, 不包括开始的冒号符及回车换行符。 LRC 字符附加在回车换行符前面。 RTU 当选用 RTU 模式作字符帧,错误检测域包含一 16Bits 值(用两个 8 位的字符来实现 )。错误检测域的容是通过对消息容进行循环冗长检测方法

33、得出的。 CRC 域附加在消息的最后,添加时先是低字节然后是高字节。故CRC 的高位字节是发送消息的最后一个字节。 7、字符的连续传输 当消息在标准的 Modbus 系列网络传输时,每个字符或 字节以如下方式发送(从左到右) :最低有效位 .最高有效位 使用 ASCII 字符帧时,位的序列 是:有奇偶校验 启始位 1 2 3 4 5 6 7 奇偶位 停止位无奇偶校验 启始位 1 2 3 4 5 6 7 停止位 停 止位图 4. 位顺序( ASCII )使用 RTU字符帧时,位的序列是: 有奇偶校验 启始位 1 2 3 4 5 6 7 8 奇偶位 停止位无奇偶校验 启始位 1 2 3 4 5 6 7 8 停止位 停止位图 4. 位顺序( RTU )四、错误检测方法 标准的 Modbus 串行网络采用两种错误检测方法。 奇偶校验对每个字符都可 用,帧检测( LRC或 CRC)应用于整个消息。它们都是在消息发送前由主设备产生的,从设备 在接收过程中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论