|
以下资料是从华为电源(PSM-A监控模块与下位机B14C3U1通信协议规范)中摘抄出来的,原文是纸质文档。
论坛里经常有华为等厂家的开关电源模块在卖,这种电源模块是通信行业用的开关电源里拆出来的,一般是整套使用,包括交流配电、直流配电、整流模块、监控单元、蓄电池组等组成一个系统,单独的整流模块可以独立工作,也可以由监控单元控制工作,如果需要监控,通过上位机软件与监控电源通信来完成。
监控单元与整流模块之间的通信是通过通信接口和通信协议来完成的,监控单元的通信协议好找,但监控单元与整流模块的通信协议就很难了,厂商都是不公开的,我偶然得到一份,公布出来,希望能够帮到那些改整流模块的坛友。
以下是正文:
(1)物理接口
(1.1)串行通信口,采用RS485,半双工的工作方式;
(1.2)数据传输速率,监控模块与模块监控板之间的通信波特率固定为9600bps
(1.3)字符格式 每个字符在传输中采用异步方式,格式如下:
起始位(1)数据位(8)校验位(SM2)停止位(1),采用51单片机的多机通信方式工作,由监控模块发往模块监控板的命令信息在发送SOI和ADR(SOI加ADR共三个字节,注释附后)时,应确保其校验位为1,而在发送命令信息其他数据时,应确保其校验位为0,由监控板往监控模块发的响应信息中每字节的校验位SM2都为0。由监控模块发往监控板的命令信息采用奇校验方式,可通过将字节的最高位置1或置为0来保证SM2位为1或0.
(2)通信方式
(2.1)主从方式,监控模块为主机,监控板为从机,主机向从机轮询数据,从机一直处于被动状态,只有主机要求从机上报数据,从机才能发送数据。
(3)数据包格式
(3.1)信息类型
监控模块(HOST)与监控板(SLAVE)之间交换的数据信息分为两种类型:
(1)命令信息:由HOST发出到SLAVE的命令;
(2)响应信息:由SLAVE返回到HOST的响应。
(3.2)信息帧格式
发送顺序号 1 2 3 4 5 6 7
解释字节数 1 1 1 2 X 2 1
发送字节数 1 2 2 4 2X 4 1
名 称 SOI ADR CID/RTN LENGTH DATAINFO CHKCODE EOI
格式中,各项除SOI和EOI以HEX解释及传输外,其余各项都是以HEX解释,以HEX-ASCII码的方式传输,每个HEX字节用两个ASCII码传输,高四位一个ASCII码传输,低四位用一个ASCII码传输,先发送低四位对应的ASCII码,在发送高四位对应的ASCII码,如CID1=4AH,则发送的是41H和34H.
(3.3)信息帧注解
起始标志位SOI,为7EH,对应的HEX字符为“~”,表示一个新信息帧的开始
监控板地址ADR,为各监控板的识别标志,一个数据总线RS485上不可挂相同地址的监控板,整流模块的编址为00-63(00H-3FH)
命令标识符CID,为各种类型的监控模块往监控板命令的识别标志,描述附后。
返回标识符RTN,监控板往监控模块的应答数据包中,在CID的位置填上返回码RTN,含义如下:
CIDH 命令正常执行
F1H 校验码错误
F2H 无效命令(命令码或命令数据无效)
F3H~FFH 保留
信息域长度LENGTH,为发送信息域DATAINFO的ASCII码字节数,当LENGTH=0时,DATAINFO为空,LENGTH由2个HEX字节构成,转换为4个ASCII码发送,先传送低HEX字节,再传送高HEX字节,如LENGTH=D012H,则依次发送32H,32H,30H,44H
信息域DATAINFO,由浮点数、整型数和字节数构成,具体见编码表
|
|