本文介紹了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內置的溫度傳感器讀取溫度值,用軟件的方式來分段補償,以節省成本。
當電子秤處于閑置狀態,可以通過間歇開啟/關閉傳感器的方式來節省系統功耗,如果有重物放置,再恢復到正常的狀態。