由于是送到TFT屏上显示,没做过负的显示。ADS1298是24位,而常见的都是32和16位,我要同时显示正负数,关于负数的编码,应该怎么处理?
Marvin Feng:
你好!
给个建议:若参考电压为0~Vref,而你的输入电压有正有负,可以考虑使用设置一个固定的偏压,将输入电压的范围限制到0~Vref范围内,然后通过后续的处理器算法来得到对应的电压值,然后可以直接将负值送到TFT上显示。
Decapton Wang:
手册30页有提到编码形式是二进制补码,如下图所示。
对于二进制补码,最高位是符号位。最高位是0时,代表正数;最高位是1时,代表负数。从你的应用来看,你想显示的是正负号和幅度。对于正负号,MSB=0时显示“+”,MSB=1时显示“-”。对于幅度,MSB=0时,后面的23位就是幅度;MSB=1时,后面的23位各位取反,再在末位加1,即可得到以正数表示的幅度。以3位二进制补码为例,011代表+3,101代表-3。处理101时,首先MSB=1,所以符号是“-”;对于后面的两位01,首先各位取反得到10,再末位加1,得到11,即幅度是3。