什么是“格雷码”?

格雷码是一种可靠性码。在一组数的编码中,如果任意两个相邻的码只相差一个二进制数,则称为格雷码。另外,由于最大数和最小数只相差一位数,即“首尾相连”,所以也叫循环码。在数字系统中,通常要求代码按一定的顺序变化。

例如,根据自然数递增技术,如果采用8421码,当数字0111变为1000时,四位都会发生变化。但在实际电路中,四位的变化不可能绝对同时发生,计数中可能会出现其他短寿命码(16544)。在某些情况下,它可能会导致电路状态错误或输入错误。使用格雷码可以避免这种错误。

扩展数据:

格雷码发展历史:

格雷码是以弗兰克·格雷1947申请并于1953批准的“脉冲码通信”专利命名的。最初用于通信,现在常用于模数转换。法国工程师让·莫里斯-& Eacute;mlle Baudot在1880中使用的波特码是典型格雷码的变体。在1941中,乔治·斯蒂比兹设计了一个8元的格雷码计数器。

格雷码的优势:

1,格雷码是一种绝对编码方式,典型的格雷码是一步自互补码,具有反射和循环特性。它的循环性和一步性消除了取随机数时产生严重错误的可能性,它的反射性和自补性使得求逆非常方便。

格雷码属于可靠性编码,是一种误差最小化的编码方法,因为虽然自然二进制码可以通过数模转换器直接转换成模拟信号,但在某些情况下,比如二进制码从十进制3转换成十进制4时,每一位都要改变,这就可以使数字电路产生一个很大的尖峰电流脉冲。而格雷码则没有这个缺点。在相邻位之间转换时,只有一位发生变化。它大大减少了从一种状态到下一种状态的逻辑混乱。

由于这种码的两个相邻码组之间只有一位的差异,在风向角位移到数字量的转换中,当风向角位移稍有变化(可能导致数字量发生变化)时,格雷码只变化一位,比其他同时变化两位或两位以上的码更可靠,可以降低出错的可能性。

2.格雷码是一种变权码,每一位码都没有固定的大小,很难直接比较大小和进行算术运算,也不能直接转换成液位信号。需要一次转换成自然二进制码,然后由上位机读取。

解码方法是将采集的4位格雷码的最高位(第4位)进行异或' 0 ',结果保留到第4位,然后异或值与下一位(第3位)不同或,结果保留到第3位,然后异或值与下一位(第2位)异或,结果保留到第2位,直到最低位,然后将转换后的值(第2位)进行异或。

参考资料:

百度百科-格雷码