在通信系统中从多检错手段中,CRC是非常著名的一种。CRC-全称循环冗余校验是对数据块校验的一种高效的差错控制方法。在单片机通信系统设计过程中,当传输距离较远或是采用无线传输时,为了保证高效而无错地传输数据,必须对数据进行检错,从性能和成本上考虑,采用CRC校验算法远优于奇遇校验和算术和校验等方法。CRC的计算有两种方法,一种是采用专门的硬件,另一种就是软件方法。对于小型低成本的51单片机系统而言,常常需要在没有相关硬件的支持下实现CRC校验,也即通过软件来完成CRC计算(CRC算法)。 这里给出了3种算法,从性能和成本上考虑,它们的适用范围也稍有不同:第一种适用于单片机程序存储空间较小但CRC计算速度要求不高的情况;第二种适用于程序存储空间较大且CRC计算速度要求较高的情况;最后一种适用于程序存储空间不太大,且CRC计算速度要求适中的情况。
猜您喜欢
评论