teste de publish

Dependencies:   DS1820 HighSpeedAnalogIn devices mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers mediaMovel.cpp Source File

mediaMovel.cpp

00001 #include "mediaMovel.h"
00002 
00003 MediaMovel::MediaMovel(uint16_t tamanho){
00004     uint16_t i;
00005     p = (uint16_t *) malloc(tamanho*sizeof(uint16_t));
00006     for(i=0;i<tamanho;i++){
00007      p[i] = 0;    
00008     }
00009     this->index = 0;
00010     this->tam = tamanho;
00011 }
00012 uint16_t MediaMovel::get(uint16_t val){
00013     uint16_t i;
00014     double media;
00015     this->p[this->index] = val;
00016     this->index++;
00017     if(this->index >= this->tam){
00018         this->index = 0;    
00019     }    
00020     media = 0;
00021     for(i=0;i < this->tam;i++){
00022         media += this->p[i];
00023     }
00024     media = media/this->tam;
00025     return (uint16_t) media;    
00026 }