Philippe Fontaine
/
rtos_basic
tiens nic
Fork of rtos_basic by
AnalogBuffer.h@11:fe7d53172c00, 2017-01-29 (annotated)
- Committer:
- philfontaine
- Date:
- Sun Jan 29 23:06:46 2017 +0000
- Revision:
- 11:fe7d53172c00
ok
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
philfontaine | 11:fe7d53172c00 | 1 | |
philfontaine | 11:fe7d53172c00 | 2 | class AnalogBuffer { |
philfontaine | 11:fe7d53172c00 | 3 | public: |
philfontaine | 11:fe7d53172c00 | 4 | AnalogBuffer(){ |
philfontaine | 11:fe7d53172c00 | 5 | index = 0; |
philfontaine | 11:fe7d53172c00 | 6 | for(int i = 0; i < BUFFER_SIZE; i++) { |
philfontaine | 11:fe7d53172c00 | 7 | buffer[i] = 0; |
philfontaine | 11:fe7d53172c00 | 8 | } |
philfontaine | 11:fe7d53172c00 | 9 | } |
philfontaine | 11:fe7d53172c00 | 10 | void put(unsigned short value){ |
philfontaine | 11:fe7d53172c00 | 11 | buffer[index++] = value; |
philfontaine | 11:fe7d53172c00 | 12 | if (index >= BUFFER_SIZE) { |
philfontaine | 11:fe7d53172c00 | 13 | index = 0; |
philfontaine | 11:fe7d53172c00 | 14 | } |
philfontaine | 11:fe7d53172c00 | 15 | } |
philfontaine | 11:fe7d53172c00 | 16 | unsigned short average(){ |
philfontaine | 11:fe7d53172c00 | 17 | unsigned short sum = 0; |
philfontaine | 11:fe7d53172c00 | 18 | for(int i = 0; i < BUFFER_SIZE; i++) { |
philfontaine | 11:fe7d53172c00 | 19 | sum += buffer[i]; |
philfontaine | 11:fe7d53172c00 | 20 | } |
philfontaine | 11:fe7d53172c00 | 21 | return sum/BUFFER_SIZE; |
philfontaine | 11:fe7d53172c00 | 22 | } |
philfontaine | 11:fe7d53172c00 | 23 | private: |
philfontaine | 11:fe7d53172c00 | 24 | static const int BUFFER_SIZE = 5; |
philfontaine | 11:fe7d53172c00 | 25 | unsigned short buffer[BUFFER_SIZE]; |
philfontaine | 11:fe7d53172c00 | 26 | int index; |
philfontaine | 11:fe7d53172c00 | 27 | }; |