本文介绍了24位高精度ADC芯片——CS1237应用在电子秤上的解决方案。系统通过CS1237内置放大器对称重传感器的微弱电压信号进行放大,然后通过Sigma-Delta ADC进行模数转换,最后使用2线SPI接口输出数据给MCU来进行处理。MCU处理完毕后,把重量信息送往显示模块或无线发射模块。
一、系统设计
电子秤由CS1237、称重传感器、MCU、按键模块、显示模块等组成。
二、详细设计
2.1、硬件设计
在高精度应用场合,为了避免MCU的工作电源对ADC工作电源造成影响,可以将CS1237的工作电源与MCU的工作电源分开,PCB Layout时要注意采用数模分离、单点接地的方式。信号输入端经过RC滤波器再进入CS1237,可以减少噪声的干扰。CS1237的通讯接口与MCU相连的过程中,各串联一个电阻,可以提高通讯的可靠性。
2.2、通讯时序
CS1237采用2线的通讯接口:DRDY/DOUT(数据线)、SCLK(时钟线)。当DRDY拉低后,表明数据已经转换完成,输入的第1个SCLK 就可以将输出的最高位读出,在24个SCLK后,将所有的24位DOUT数据读出。如果需要更改配置(通道、PGA、速率)或关闭传感器激励源以节省功耗,可以通过相应的命令对CS1237的寄存器进行配置。
2.3、软件处理
对读取的AD值可以进行适当的软件滤波处理,比如算术平均滤波、滑动平均滤波、中值滤波,等等,以获取更高的精度或抗干扰能力。
由于传感器的温度特性往往不是很理想,需要补偿才能达到性能要求。此时可以利用CS1237内置的温度传感器读取温度值,用软件的方式来分段补偿,以节省成本。
当电子秤处于闲置状态,可以通过间歇开启/关闭传感器的方式来节省系统功耗,如果有重物放置,再恢复到正常的状态。 |