CN110221937A - 一种板间通信数据的解析方法 - Google Patents

一种板间通信数据的解析方法 Download PDF

Info

Publication number
CN110221937A
CN110221937A CN201910486179.9A CN201910486179A CN110221937A CN 110221937 A CN110221937 A CN 110221937A CN 201910486179 A CN201910486179 A CN 201910486179A CN 110221937 A CN110221937 A CN 110221937A
Authority
CN
China
Prior art keywords
register
master control
message information
control borad
expansion board
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910486179.9A
Other languages
English (en)
Inventor
周强
聂福全
孙小高
孙云龙
张振强
李永
常玉军
单迎歌
张栋梁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Henan Weihua Heavy Machinery Co Ltd
Original Assignee
Henan Weihua Heavy Machinery Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Henan Weihua Heavy Machinery Co Ltd filed Critical Henan Weihua Heavy Machinery Co Ltd
Priority to CN201910486179.9A priority Critical patent/CN110221937A/zh
Publication of CN110221937A publication Critical patent/CN110221937A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Communication Control (AREA)

Abstract

本发明公开了一种板间通信数据的解析方法,通过设计数据传输帧格式和读写解析方法,实现了主控板与多块扩展板间的快速串行通信,可以支持多种电气接口,帧格式简单、紧凑,通俗易懂;主从板读写灵活,可以读写单个寄存器变量,也可以读写多个寄存器变量,可以读写连续的寄存器变量,也可以读写离散的寄存器变量;增加帧错误检测判断、发送数据成功检测判断、接收数据成功检测判断、通信状态检测判断,保证数据的可靠传输。

Description

一种板间通信数据的解析方法
技术领域
本发明涉及信号通信技术领域,尤其是涉及了一种板间通信数据的解析方法。
背景技术
当前起重机控制***中,往往需要实现不同信号处理板之间的互联和信息交换,如通过主控板同时向数字量输入输出板,编码器板,交流输入输出板以及模拟量输出板发送数据,主控板根据响应来控制扩展板程序的运行。
主控板与多块扩展板间的信号传输,最常见的是并行数据传输,但并行通信布线复杂、成本较高、不适合远距离传输且可靠性较低。主控板与多块扩展板间利用串行通信方式进行数据传输的应用还不是很成熟,数据的传输速率和准确率不高,会影响到***的正常工作。
发明内容
为了克服背景技术中的不足,本发明公开了一种板间通信数据的解析方法,实现了主控板与多块扩展板间的串行通信,通过设计数据传输帧格式和读写解析方法,提高了传输速度,保证了传输的正确性。
为实现上述发明目的,本发明采用如下技术方案:
一种板间通信数据的解析方法,包括以下步骤:
步骤一:***初始化,***开始工作后,扩展板自身进行数据初始化工作,清除缓冲区及相关变量;
步骤二:主控板发送报文信息,主控板根据任务需求构造不同格式的报文信息,若主控板进行读寄存器操作,则主控板根据主机读寄存器帧格式构造报文信息,若主控板进行写寄存器操作,则主控板根据主机写寄存器桢格式构造报文信息,最后主控板生成CRC校验码,并将报文信息发送给各个扩展板;
步骤三:扩展板接收报文信息,与主控板相连的各个扩展板同时接收到主控板发送的报文信息,扩展板接收到报文信息后,对报文信息中的从机地址码进行核对,若报文信息中的从机地址码与扩展板的地址不一致,则舍弃此条报文信息,继续等待下条报文的到来,若报文信息中的从机地址码与扩展板的地址一致,则进行错误帧检测;若CRC校验码正确,则进入步骤四,若CRC校验码出现错误,则舍弃此条报文信息,继续等待下条报文到来;
步骤四:扩展板发送回应报文,扩展板根据主控板发送报文信息中的功能码判断需要执行什么动作,若为读寄存器操作,则扩展板读取主控板发送报文信息所需读取的寄存器中的数据,并根据读寄存器返回帧格式构造回应报文,若为写寄存器操作,则扩展板将主控板发送的数据依次写入相应的寄存器中,并根据写寄存器返回帧格式构造回应报文,最后扩展板生成CRC校验码,并将回应报文信息发送给主控板;
步骤五:主控板解析回应报文信息,主控板接收到扩展板发送的回应报文信息后,对回应报文信息中的从机地址码进行核对,若回应报文信息中的从机地址码与主控板已发送报文信息中的从机地址码不一致,则舍弃此条回应报文信息,等待下一条回应报文信息到来,若回应报文信息中的从机地址码与主控板已发送报文信息中的从机地址码一致,则进行错误帧检测;若CRC校验码正确且功能码为读寄存器操作,主控板读取扩展板发送的回应报文信息中的数据信息,若CRC校验码正确且功能码写寄存器操作,主控板判定写寄存器成功,若CRC校验码出现错误,则舍弃此条报文信息;主控板判断与扩展板通信是否结束,若继续进行通信,则重复步骤二。
优选的,所述主机读寄存器帧包括从机地址码、功能码、首寄存器地址、寄存器数和校验位。
优选的,所述主机写寄存器帧包括从机地址码、功能码、首寄存器地址、寄存器数、数据段和校验位。
优选的,所述读寄存器返回帧包括从机地址码、功能码、寄存器数、数据段和校验位。
优选的,所述写寄存器返回帧包括从机地址码、功能码、首寄存器地址、寄存器数和校验位。
本发明通过设计数据传输帧格式和读写解析方法,实现了主控板与多块扩展板间的快速串行通信,可以支持多种电气接口,帧格式简单、紧凑,通俗易懂;主从机读写灵活,可以读写单个寄存器变量,也可以读写多个寄存器变量,可以读写连续的寄存器变量,也可以读写离散的寄存器变量,无需修改程序本体,只需传递读写函数接口的形参即可实现对不同数据的读写;增加帧错误检测判断、发送数据成功检测判断、接收数据成功检测判断、通信状态检测判断,保证了数据的可靠传输。
附图说明
图1为主控板与多块扩展板间的串行通信结构示意图;
图2为本发明板间通信数据的解析方法流程示意图;
图3为本发明主机读寄存器帧格式;
图4为本发明主机写寄存器帧格式;
图5为本发明读寄存器返回帧格式;
图6为本发明写寄存器返回帧格式。
具体实施方式
通过下面的实施例可以详细的解释本发明,公开本发明的目的旨在保护本发明范围内的一切技术改进,本发明并不局限于下面的实施例。
图1为主控板与多块扩展板间的串行通信结构示意图,一块主控板与多块扩展板间进行串行通信时,多块扩展板共用一条数据传输线,当主控板发送命令时,多块扩展板同时接收到该命令。
图2为本发明一种板间通信数据的解析方法流程示意图,该解析方法使用主--从技术,即主控板进行查询,其它扩展板根据主控板查询信息作出相应反应;该解析方法针对主控板的读写操作,设计了主机读寄存器帧、主机写寄存器帧格式、读寄存器返回帧和写寄存器返回帧,其具体格式如图3-图6所示,同时规定当一帧数据结束后,4个字符时间内没有新的数据到达,判断为帧结束。各个帧元素具体说明如下。
从机地址码:通讯传送的第一个字节,表示扩展板的地址;主控板发送报文中的从机地址码表明将要与之进行通信的扩展板地址,扩展板回应报文的从机地址码表明向主控板进行回应的扩展板地址;每个扩展板都有具有唯一的地址码。
功能码:通讯传送的第二个字节,表示需要执行何总操作,0xAA为读操作,功能码0xBB为写操作;主控板发送报文中的功能码,告诉扩展板执行什么动作;扩展板回应报文中的功能码,若与从主控板发送报文中的功能码一致,表明扩展板已响应主控板进行操作。
首寄存器地址:读取或者写入数据的开始地址单元,占用2个字节,高字节在前低字节在后。
寄存器数:读取或者写入寄存器的个数,占用2个字节。
数据段:数据段包含了需要读取或写入的数据内容,高字节在前低字节在后。
校验码:用于检查主控板和扩展板传输过程中的错误,错误校验使用了16位循环冗余的方法(CRC16),长度为2字节,低字节在前,高字节在后。
一种板间通信数据的解析方法具体包括以下步骤。
步骤一:***初始化。
***开始工作后,扩展板自身进行数据初始化工作,清除缓冲区及相关变量。
步骤二:主控板发送报文信息。
主控板根据任务需求构造不同格式的报文信息。
若主控板进行读寄存器操作,则主控板根据主机读寄存器帧格式构造报文信息,如图3所示;报文信息中的从机地址码为要进行通信的扩展板地址码,报文信息中的功能码告之被选中的扩展板要执行读存器操作,这里使用0xAA,报文信息中的首寄存器地址和寄存器数告知扩展板要读取以首寄存器地址开始读寄存器以及读寄存器的个数。
若主控板进行写寄存器操作,则主控板根据主机写寄存器桢格式构造报文信息,如图4示;报文信息中的从机地址码为要进行通信的扩展板地址码,报文信息中的功能码告之被选中的扩展板要执行写寄存器操作,这里使用0xBB,报文信息中的首寄存器地址和寄存器数是告诉扩展板从首寄存器地址开始写寄存器以及写寄存器的个数,报文信息中的数据段为要写入的数据内容。
最后主控板生成CRC校验码,并将报文信息发送给各个扩展板。
步骤三:扩展板接收报文信息。
与主控板相连的各个扩展板同时接收到主控板发送的报文信息,扩展板接收到报文信息后,对报文信息中的从机地址码进行核对。
若报文信息中的从机地址码与扩展板的地址不一致,说明要与主控板通信的不是此块扩展板,则舍弃此条报文信息,继续等待下条报文的到来;若报文信息中的从机地址码与扩展板的地址一致,说明要与主控板通信的是此块扩展板,则进行错误帧检测。
若CRC校验码正确,传输过程无误,该扩展板可以与主控板通信,则进入步骤四,若CRC校验码出现错误,则舍弃此条报文信息,继续等待下条报文到来。
步骤四:扩展板发送回应报文。
扩展板根据主控板发送报文信息中的功能码判断需要执行什么动作。
若为读寄存器操作,则扩展板读取主控板发送报文信息所需读取的寄存器中的数据,并根据读寄存器返回帧格式构造回应报文,如图5所示;回应报文中的从机地址码是与主控板进行通信的扩展板地址,回应报文中的功能码是主控板发送报文信息中功能码的回应,回应报文中的寄存器数是在主控板发送报文信息中寄存器数的回应,数据段包括了扩展板读取的数据内容。
若为写寄存器操作,则扩展板将主控板发送的数据依次写入相应的寄存器中,并根据写寄存器返回帧格式构造回应报文,如图6所示;回应报文中的从机地址码是与主控板进行通信的扩展板地址,回应报文中的功能码是主控板发送报文信息中功能码的回应,回应报文中的首寄存器地址和寄存器数是主控板发送报文信息中首寄存器地址和寄存器数的回应。
最后扩展板生成CRC校验码,并将回应报文信息发送给主控板。
步骤五:主控板解析回应报文。
主控板接收到扩展板发送的回应报文信息后,对回应报文信息中的从机地址码进行核对。
若回应报文信息中的从机地址码与主控板已发送报文信息中的从机地址码不一致,说明不是该地址的扩展板与主控板通信,则舍弃此条回应报文信息,等待下一条回应报文信息到来;若回应报文信息中的从机地址码与主控板已发送报文信息中的从机地址码一致,则进行错误帧检测。
若CRC校验码正确且为功能码为读寄存器操作,主控板读取扩展板发送的回应报文信息中的数据信息,若CRC校验码正确且为功能码写寄存器操作,主控板判定写寄存器成功,若CRC校验码出现错误,则舍弃此条报文信息。
主控板判断与扩展板通信是否结束,若继续进行通信,则重复步骤二。
本发明未详述部分为现有技术。

Claims (5)

1.一种板间通信数据的解析方法,其特征是,该方法包括以下步骤:
步骤一:***初始化,***开始工作后,扩展板自身进行数据初始化工作,清除缓冲区及相关变量;
步骤二:主控板发送报文信息,主控板根据任务需求构造不同格式的报文信息,若主控板进行读寄存器操作,则主控板根据主机读寄存器帧格式构造报文信息,若主控板进行写寄存器操作,则主控板根据主机写寄存器桢格式构造报文信息,最后主控板生成CRC校验码,并将报文信息发送给各个扩展板;
步骤三:扩展板接收报文信息,与主控板相连的各个扩展板同时接收到主控板发送的报文信息,扩展板接收到报文信息后,对报文信息中的从机地址码进行核对,若报文信息中的从机地址码与扩展板的地址不一致,则舍弃此条报文信息,继续等待下条报文的到来,若报文信息中的从机地址码与扩展板的地址一致,则进行错误帧检测;若CRC校验码正确,则进入步骤四,若CRC校验码出现错误,则舍弃此条报文信息,继续等待下条报文到来;
步骤四:扩展板发送回应报文,扩展板根据主控板发送报文信息中的功能码判断需要执行什么动作,若为读寄存器操作,则扩展板读取主控板发送报文信息所需读取的寄存器中的数据,并根据读寄存器返回帧格式构造回应报文,若为写寄存器操作,则扩展板将主控板发送的数据依次写入相应的寄存器中,并根据写寄存器返回帧格式构造回应报文,最后扩展板生成CRC校验码,并将回应报文信息发送给主控板;
步骤五:主控板解析回应报文信息,主控板接收到扩展板发送的回应报文信息后,对回应报文信息中的从机地址码进行核对,若回应报文信息中的从机地址码与主控板已发送报文信息中的从机地址码不一致,则舍弃此条回应报文信息,等待下一条回应报文信息到来,若回应报文信息中的从机地址码与主控板已发送报文信息中的从机地址码一致,则进行错误帧检测;若CRC校验码正确且功能码为读寄存器操作,主控板读取扩展板发送的回应报文信息中的数据信息,若CRC校验码正确且功能码写寄存器操作,主控板判定写寄存器成功,若CRC校验码出现错误,则舍弃此条报文信息;主控板判断与扩展板通信是否结束,若继续进行通信,则重复步骤二。
2.如权利要求1所述的一种板间通信数据的解析方法,其特征是:所述主机读寄存器帧包括从机地址码、功能码、首寄存器地址、寄存器数和校验位。
3.如权利要求1所述的一种板间通信数据的解析方法,其特征是:所述主机写寄存器帧包括从机地址码、功能码、首寄存器地址、寄存器数、数据段和校验位。
4.如权利要求1所述的一种板间通信数据的解析方法,其特征是:所述读寄存器返回帧包括从机地址码、功能码、寄存器数、数据段和校验位。
5.如权利要求1所述的一种板间通信数据的解析方法,其特征是:所述写寄存器返回帧包括从机地址码、功能码、首寄存器地址、寄存器数和校验位。
CN201910486179.9A 2019-06-05 2019-06-05 一种板间通信数据的解析方法 Pending CN110221937A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910486179.9A CN110221937A (zh) 2019-06-05 2019-06-05 一种板间通信数据的解析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910486179.9A CN110221937A (zh) 2019-06-05 2019-06-05 一种板间通信数据的解析方法

Publications (1)

Publication Number Publication Date
CN110221937A true CN110221937A (zh) 2019-09-10

Family

ID=67819734

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910486179.9A Pending CN110221937A (zh) 2019-06-05 2019-06-05 一种板间通信数据的解析方法

Country Status (1)

Country Link
CN (1) CN110221937A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113587073A (zh) * 2021-09-28 2021-11-02 江苏未来智慧信息科技有限公司 智慧电厂控制***与方法
CN115080477A (zh) * 2022-05-30 2022-09-20 杭州初灵信息技术股份有限公司 一种串行通信的方法和***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399654A (zh) * 2007-09-25 2009-04-01 华为技术有限公司 一种串行通信方法和装置
CN103425611A (zh) * 2013-05-20 2013-12-04 万高(杭州)科技有限公司 用于计量领域的串口通讯方法
CN104580187A (zh) * 2014-12-31 2015-04-29 厦门为那通信科技有限公司 一种实现不同modulebus协议的外置设备与服务器交互的方法
CN104794089A (zh) * 2015-05-12 2015-07-22 中国电子科技集团公司第四十七研究所 适用于单片机的改进型uart通信的方法、装置及***
CN107705391A (zh) * 2016-08-08 2018-02-16 同方锐安科技有限公司 一种高安全、可扩展的门禁控制器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399654A (zh) * 2007-09-25 2009-04-01 华为技术有限公司 一种串行通信方法和装置
CN103425611A (zh) * 2013-05-20 2013-12-04 万高(杭州)科技有限公司 用于计量领域的串口通讯方法
CN104580187A (zh) * 2014-12-31 2015-04-29 厦门为那通信科技有限公司 一种实现不同modulebus协议的外置设备与服务器交互的方法
CN104794089A (zh) * 2015-05-12 2015-07-22 中国电子科技集团公司第四十七研究所 适用于单片机的改进型uart通信的方法、装置及***
CN107705391A (zh) * 2016-08-08 2018-02-16 同方锐安科技有限公司 一种高安全、可扩展的门禁控制器

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113587073A (zh) * 2021-09-28 2021-11-02 江苏未来智慧信息科技有限公司 智慧电厂控制***与方法
CN115080477A (zh) * 2022-05-30 2022-09-20 杭州初灵信息技术股份有限公司 一种串行通信的方法和***
CN115080477B (zh) * 2022-05-30 2024-01-30 杭州初灵信息技术股份有限公司 一种串行通信的方法和***

Similar Documents

Publication Publication Date Title
US3866175A (en) Data communication system between a central computer and a plurality of data terminals
US8924603B2 (en) Protocol adapter for passing diagnostic messages between a host computer and vehicle networks operating in J1939 or J1708 protocol
CN100565472C (zh) 一种适用于多处理器核***芯片的调试方法
CN106444657B (zh) 一种Modbus主站指令处理方法及主站控制器
CN110221937A (zh) 一种板间通信数据的解析方法
CN104714904A (zh) 采用窗口映射机制的RapidIO控制器及其控制方法
CN107025203A (zh) 第一板卡、第二板卡及一种设备
CN106126465B (zh) 一种数据传输方法及装置
US7827335B2 (en) Remote communication system of a network
CN103378994A (zh) 一种通信设备的测试方法及终端
CN110134622B (zh) 数据采集模块与数据传输模块的数据交互***
CN113434442A (zh) 一种交换机及数据访问方法
CN100476778C (zh) 主模块、功能模块和电子器件以及标识数据设定方法
US7395197B2 (en) Verification method and system for logic circuit
CN114416622B (zh) 单总线通讯***及方法
CN115549782A (zh) 一种光模块的信息查询方法及其相关组件
CN212486527U (zh) 一种基于modbus协议的从站转换装置
CN210380890U (zh) 一种Modbus设备的通讯***及SIS***
CN115481078A (zh) 主从式通讯***及方法
CN110955175A (zh) 一种单片机与pc机通信的方法
CN103995475A (zh) 一种柔性嵌入式被测设备模拟器
CN113986807B (zh) 一种usb总线与pc104总线的协议转换方法及协议转换器
CN110113137B (zh) 一种消除数据传输干扰的方法
CN107729033A (zh) 实现在线编程的嵌入式***、编程器及方法
JPH01282606A (ja) Pmc装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190910