大家好、
我们正在设计具有以下规格的称重秤。
- 称重传感器500千克
- 称重传感器输出2mV/V
- VREF 5VDC
- 输入电源5 VDC
- ADS 增益128
- 数据速率10SPS
- 连接 ATMHz 328控制器
我在 ADC 输出计数方面遇到问题、输出计数继续波动。
当我在 +ve 引脚上施加0.00 VDC 电压并读取 ADC 输出时、但数据计数仍然波动。
请帮助我解决 ADC 值波动问题以及如何测量噪声?
#include int ADS1230_DOUT = 12;//用于 ADS1230的 DRDY/DOUT 的引脚 int ADS1230_SCLK = 13;//用于 ADS1230的 SCLK 的引脚 int ADS1230_NPDWN = 5;//用于 ADS1230的 nPDWN 的引脚 float 容量= 50000; float 灵敏度= 2; void ReadData (){ SPI.beginTransaction(SPISettings(400000、NPDWN = 0);intM32 = 0;intSPI = 0;intMIRt 计数 对于(int i = 0;i < 10;i++){ if (digitalRead (ADS1230_DOUT)=低电平) { int32_t sample = 0; 采样|= SPI.transfer (0); 采样<<= 8; 采样|= SPI.transfer (0); 采样<<= 8; 采样|= SPI.transfer (0); 采样<<= 8; 采样/= 1L << 12; SUM = SUM + SAMPLE; count++; } } SUM = SUM / COUNT; Int32_t WEIGHT =(Capacity * SUM)/((1L << 20)* 128 *((敏感度/ 1000))); Serial.println (权重); SPI.endTransaction (); } void setup() { Serial.begin (9600); pinMode (5、1); digitalWrite (5、1); PinMode (ADS1230_DOUT、输入); SPI.begin(); } void loop() { ReadData(); delay (1000); }
我们的 ADC 输出、
28332
28213.
28299
28340
28310
28265
28312
28310
28263.
28245.
2828287
28273.
28332
28291
28306
28327
28323
28286.
28256
28323