#ifndef _SOILMOISTURE_H_ #define _SOILMOISTURE_H_ #define SM1_ADS_CHANNEL 1 #define READINTERVAL_SM 100 unsigned long last_read_sm=0; #define SM_SIZE 16 uint8_t sm_mean_pos=0; uint16_t sm_mean[SM_SIZE]; void sm_loop(unsigned long loopmillis) { if (loopmillis>=last_read_sm+READINTERVAL_SM) { last_read_sm=loopmillis; uint16_t value = ADS.readADC(SM1_ADS_CHANNEL); sm_mean[sm_mean_pos]=value; sm_mean_pos++; sm_mean_pos%=SM_SIZE; //Serial.print(getMean(sm_mean,SM_SIZE)); Serial.print("\t "); Serial.println(value); } } #endif