什么是同步头串行通信

时间:2017-03-10 07:48:02

标签: serial-port

我目前正致力于为加油站创建燃油泵POS机,制造商给了我他们所谓的“通讯协议”

我要求提供更多指导,但他们不再回复。

这是他们给我的通信协议中给出的。

  1. 沟通假设: 9600 BPS,偶数奇偶校验,8个数据位,1个停止位
  2. 指令的数据结构

    2.1 同步头:3个字节。所有指令和回复必须使用三个 0FCH 作为同步头。

    2.2说明:1字节

    2.3喷嘴数:1字节

    2.4数据:数据长度可以根据不同的指令改变。

    2.5校验和:2字节。使用CRC奇偶校验,它是指令的CRC奇偶校验值,喷嘴号和数据字节。

  3. 在说明表中,这是一个例子

    读取总数,num为08H,要接收的数据为总销售额(4 Hex),总升(4 Hex),总公斤(4 Hex)。

    但我如何发送08H?什么是同步头?它如上所述“所有指令和回复必须使用三个 0FCH 作为同步头”

    我尝试将字符串发送到串口:“0FCH 0FCH 0FCH 08H”,但没有成功。

    有人可以帮忙吗?

    This is some of the example

1 个答案:

答案 0 :(得分:0)

我认为同步头应该是三个字节:{ 0xFC, 0xFC, 0xFC }

关于CRC,你可以在这里找到CRC16的计算器: https://www.lammertbies.nl/comm/info/crc-calculation.html