Official reference client implementation for Cumulocity SmartREST on u-blox C027.
Dependencies: C027_Support C12832 LM75B MMA7660 MbedSmartRest mbed-rtos mbed
Fork of MbedSmartRestMain by
Diff: measurement/Potentiometer.cpp
- Revision:
- 124:311fa85af2b3
- Parent:
- 118:e831cdb799ab
- Child:
- 125:979ab0d075de
--- a/measurement/Potentiometer.cpp Wed May 27 09:22:24 2015 +0000 +++ b/measurement/Potentiometer.cpp Fri May 29 12:05:01 2015 +0000 @@ -28,7 +28,7 @@ float min[2] = {100, 100}; float max[2] = {0, 0}; // multiple sampling for data smoothing - const unsigned short N = 10; + const unsigned short N = 20; for (unsigned short i = 0; i < N; ++i) { float d0 = (float)analog1*100; float d1 = (float)analog2*100; @@ -38,24 +38,24 @@ min[1] = min[1] <= d1 ? min[1] : d1; max[0] = max[0] >= d0 ? max[0] : d0; max[1] = max[1] >= d1 ? max[1] : d1; - Thread::wait(10); + Thread::wait(5); } data[0] = (data[0]-min[0]-max[0]) / (N-2); data[1] = (data[1]-min[1]-max[1]) / (N-2); - if (!valueChanged(oldValues, data)) { - time_t t_interval = time(NULL) - t_start; - if (t_interval < TIME_LIMIT_ANA) { - return 0; - } + float t_interval = timer.read(); + if (!valueChanged(oldValues, data) && t_interval < TIME_LIMIT_ANA) { + return 0; } + if (t_interval >= TIME_LIMIT_ANA) + aInfo("[%f]: %f, %f (%f, %f)\n", t_interval, data[0], data[1], oldValues[0], oldValues[1]); size_t l = snprintf(buf, maxLen, fmt, deviceID, data[0], data[1]); if (status) { snprintf(status, num, "Send Poti %.1f,%.1f", data[0], data[1]); } oldValues[0] = data[0]; oldValues[1] = data[1]; - t_start = time(NULL); + timer.reset(); return l; } \ No newline at end of file