多机串口通信的实现

多机串口通信的实现

第33卷第5期电子工程师2007年5月 ELECTRONICENGINEER Vo.l33No.5

May2007

多机串口通信的实现

王秀森,蒋永馨,叶喜勇

1

2

1

(1.海军大连舰艇学院航海系,辽宁省大连市116018;2.海军大连舰艇学院光电技术研究所,辽宁省大连市116018)

摘 要:串口通信是测控系统组网的主要形式,其中自定义协议是一个关键环节。文中首先给出了串口通信自定义协议的一般格式,然后结合某测控系统给出了实际应用中协议内容的具体定义,并

详细分析了信息传输控制过程,解决了串口通信编程中的技术难点,为自定义协议在多机串口通信中的应用提供了一种开发模式。最后,以VC++6.0为开发工具,给出了通信协议的实现,并编程实现了通信报文的传输控制过程。实用表明,采用该方案可以获得良好的通信可靠性。

关键词:串口通信;协议;VC++

中图分类号:TP393.02

报文的格式。

上位机向下位机发送的命令报文共16个字节。第1个字节为报文起始字符,其ASCII为01H。第2个字节为下位机站号( 1 ~ 7 )。第3个字节STX为正文起始字符,其ASCII为02H。第4个字节为命令标识,本系统命令主要有参数设定、自检、复位、调节等,分别标示为( A ~ F )。第5~6个字节为参数标识,以调节命令为例,调节命令对应的参数有左偏角和右偏角,分别表识为 F1 和 F2 。第7个字节为增量,其中不调节对应 0 ,正向调节 1 ,负向调节 2 。第8~14个字节为设定参数,其中第8个字节为符号位,正数30H,负数2DH,第9~12个字节为整数部分,第13~14个字节为小数部分,从高位到低位,无数据处填30H。

下位机与上位机之间发送的确认信号,第1个字节SOH为报文起始字符,其ASCII为01H。第2个字节为传输控制字符,主要有ACK(认可)、NAK(否定)和EOT(结束),其ASCII分别为06H,15H,04H。

下位机向上位机回送的数据报文共12个字节。第1个字节为报文起始字符,其ASCII为01H。第2个字节为上位机站号,这里为 0 。第3个字节STX为正文起始字符,其ASCII为02H。第4~11共8个字节为回送结果,分为动作标志和数据两种情况,动作标志有 SXXXXXX 和 PXXXXXX ,表示成功和失败,数据格式则与前面定义的设定参数格式相同。

图2 系统结构

0 引 言

串口通信是测控系统组网的主要形式,其中自定义协议是一个关键环节。协议是数据发送与接收方都必须遵守的一种规则,这种规则一部分是发送方及接收方所认识的信息组成格式即信息结构,另一部分是由信息结构的协议类型及协议操作符所组成的会话方式即传输控制。

自定义协议一般由报文和传输控制组成。报文是由控制信息和数据信息组成的最小信息实体,每个报文一般包括一个特殊的起始符、协议类型、协议操作符、数据块长、数据信息、结束符。其结构见图1。其中:PS为报文起始符;PT为报文传输对象;PO为报文操作符;PL为报文操作参数;PD为数据信息流;PN为报文结束符。

图1 报文的一般格式

1 自定义协议在多机串口通信中的应用实例

下面以某测控系统为例,利用自定义协议实现多机网络通信,该系统的结构框图如图2所示。

2 报文的传输控制

报文的传输控制是指信息传送的过程。一般的传

输控制过程如下:上位机首先发出控制信息包,下位机收到该信息包后进行解析,包括奇偶校验和格式检查。

该系统由上位机发出各种指令给下位机,下位机执行命名并回送检测结果。根据系统实际需求定义了

收稿日期:2006 09 05;修回日期:2007 01 08。

你可能喜欢

  • 单片机多机通信
  • 单片机串口通信
  • 通信系统设计
  • 串口编程
  • 数据库触发器
  • RS485总线
  • SQL触发器实例

多机串口通信的实现相关文档

最新文档

返回顶部