seems to work now

This commit is contained in:
wn
2014-11-05 23:06:12 +01:00
parent ed17033c78
commit 747ffbf6ad
2 changed files with 14 additions and 8 deletions

View File

@ -22,7 +22,7 @@ void ADS1210::disableCS() const {
} }
void ADS1210::waitForDRdy() const { void ADS1210::waitForDRdy() const {
uint32_t timeOut = 100000; uint32_t timeOut = 1000000;
while ((0 != digitalRead(m_drdyPin)) && timeOut) { while ((0 != digitalRead(m_drdyPin)) && timeOut) {
timeOut--; timeOut--;
} }
@ -73,6 +73,10 @@ void ADS1210::exec() {
//Serial << "DOR1x32: " << _HEX(res.out) << endl; //Serial << "DOR1x32: " << _HEX(res.out) << endl;
value = res.out; value = res.out;
if (value == 0) {
// fatal(2);
}
} }
} }
@ -103,7 +107,7 @@ void ADS1210::begin(uint8_t csPin, uint8_t drdyPin) {
digitalWrite(m_csPin, HIGH); digitalWrite(m_csPin, HIGH);
SPI.begin(); SPI.begin();
SPI.setBitOrder(MSBFIRST); SPI.setBitOrder(MSBFIRST);
SPI.setClockDivider(SPI_CLOCK_DIV16); SPI.setClockDivider(SPI_CLOCK_DIV8);
SPI.setDataMode(SPI_MODE1); SPI.setDataMode(SPI_MODE1);
Serial << "done." << endl; Serial << "done." << endl;
@ -111,11 +115,13 @@ void ADS1210::begin(uint8_t csPin, uint8_t drdyPin) {
Serial << "Start ADS1210 initialization ... "; Serial << "Start ADS1210 initialization ... ";
pinMode(m_drdyPin, INPUT); pinMode(m_drdyPin, INPUT);
writeRegister(ADDR_CMR3, CMR_SDL | CMR_UB | CMR_REFO); writeRegister(ADDR_CMR3, CMR_SDL | CMR_UB | CMR_REFO);
writeRegister(ADDR_CMR1, 0x1b); // data rate
writeRegister(ADDR_CMR0, 0x58);
Serial << "done." << endl; Serial << "done." << endl;
Serial << "Set gain ... "; // Serial << "Set gain ... ";
setGain(CMR_Gain_2); // setGain(CMR_Gain_2);
Serial << "done." << endl; // Serial << "done." << endl;
Serial << "SelfCalibration ... "; Serial << "SelfCalibration ... ";
setMode(CMR_MD_SelfCalibration); setMode(CMR_MD_SelfCalibration);