议发出的一条消息。第1个字节81表示突发的长结构模式,与前例中相似的地方我们不再介绍。注意到状态字节“0060”后的字节“413FA000”,他表示的是当前的电流值,计算后是11.9766;后面的27表示单位mA,像后面的39表示“%”一样。数据字节中的“42476000”,“BF066000”,“41950000”分别表示“SV”,“TV”,“FV”表示方法与PV相同。经过解释后的消息可以表示为:“LBTXS/RdAllPv/026/
f0060/11.9766/mA/11.9766/%/49.8438/psi/-0.524902/%/18.625/D4”。
华丽的分割线FFFFFFFFFFFF0280000082
以上就是一段单片机首先要跟设备发送的命令,接下来我们来解析一下
FFFFFFFFFF0280000082先导码短指令地址0命令00个数据异或校验位
第一条指令是所有支持hart协议的设备都要懂得先导码:就是一段命令的开始,一般都是5个FF指令码:此处02表示的是告诉设备我现在发送过去的是一条短指令当然还有其他的指令结构:
主机到从机为短结构时,起始位为02,长帧时为82。
从机到主机的短结构值为06,长结构值为86
“突发”模式的短结构值为01,长结构为81
地址码:包含了主机地址和从机地址短指令时:地址码由一个字节表示(如80),其结构为
1234
一般我们不用到突发模式,这里的80表示的就是(主机1设备地址(0))长指令时:地址码由5个字节表示,其结构为
f命令码:如00表示的是命令0,这里的命令设备能够识别从而做出相应的响应数据个数码:表示的是再次之后的第一个数最后一个(不包括校验位)的个数,这一位很重要,在编程的时候,我们经常用这个来调用数值响应吗:只存在于从机主机的过程中(从机对主机的响应)校验码:此码主要是用来确保传输没有问题用的,采用的是异或校验(自己可以去百度一下异或校验的意思)(这一位都是根据前面的数值锁确定的)各种码都讲了一遍,现在我贴上几张自己试验获得的码,大家可以对着分析一下:
FFFFFFFFFF82A6066356BA0100ACFFFFFFFFFF82A6066356BA0200AF
HART协议
11简介
现代工业生产中存在着多种不同的主机和现场设备,要想很好地使用他们,完善的通讯协议是必须的。HART协议最初是由美国Rosemou
t公司开发,已应用了多年。HART协议使用FSK技术,在420mA信号过程量上叠加一个频率信号,成功地把模拟信号和数字信号双向同时通讯,而不互相干扰。HART协议参照了国际标准化组织的开放性互连模型,使用OSI标准的物理层、数据链路层r