由于没做过单片机中,通讯主从多机通讯的东西,最近做的采用PAM-A监控模块与下位机通讯协议的系统中,有几个问题,想不明白,请各位指点。 1.消息是以帧格式发送,包括起始,监控板地址,命令/返回,信息域长度,数据,校验码,结束。其中校验码采用CRC-12,在用CRC-12后,每一个字节又都加入了奇校验(因为把每个hex字节解释成ASCII码,这样每字节bit7可加入奇校验),我不明白的是如果接受到CRC-12校验码,检验出来有错,应该是一帧信息全部重新发送?而要是奇校验有错,是那一个字节重发,还是一帧重发?如果是奇校验有错的那个字节重发,那是不是接收方要收一个字节,然后校验,然后给发送发一个信息,发送方再根据返回信息来判断是重发还是继续发
2.和1的问题有点类似,发送方发送一帧信息时,是全部一帧的就传过去,而接收方不返回信息,只要是地址对的就全部收完(我看到网上说过设定一个时间,超过该时间没有回应就说明发送方消息有错或地址不存在,不过在PSM-A协议中的应答帧有校验码错误和无效命令);还是发送方一字节一字节传送过去,接收方一字节一字节的收下,且每个收一个字节返回一个接收标志,这样把一帧信息接收完成。 以上就是我不明白的地方,请各位多多指点!谢谢 |