tiens nic

Dependencies:   mbed-rtos mbed

Fork of rtos_basic by mbed official

AnalogBuffer.h

Committer:
philfontaine
Date:
2017-01-29
Revision:
11:fe7d53172c00

File content as of revision 11:fe7d53172c00:


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;
};