Philippe Fontaine
/
rtos_basic
tiens nic
Fork of rtos_basic by
Diff: AnalogBuffer.h
- Revision:
- 11:fe7d53172c00
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/AnalogBuffer.h Sun Jan 29 23:06:46 2017 +0000 @@ -0,0 +1,27 @@ + +class AnalogBuffer { +public: + AnalogBuffer(){ + index = 0; + for(int i = 0; i < BUFFER_SIZE; i++) { + buffer[i] = 0; + } + } + void put(unsigned short value){ + buffer[index++] = value; + if (index >= BUFFER_SIZE) { + index = 0; + } + } + unsigned short average(){ + unsigned short sum = 0; + for(int i = 0; i < BUFFER_SIZE; i++) { + sum += buffer[i]; + } + return sum/BUFFER_SIZE; + } +private: + static const int BUFFER_SIZE = 5; + unsigned short buffer[BUFFER_SIZE]; + int index; +}; \ No newline at end of file