Hello!
I using WinAVR 20090313 and ATMega32.
I write code for time critical application.
There is a moving average filter algorithm.
unsigned char data = 0;
unsigned char i = 0;
unsigned char mafinit = 0;
unsigned int mafsum = 0;
unsigned char mafdata[16];
if (!mafinit)
{
for (i = 0; i < 16; i++)
mafdata[i] = data;
mafinit = 1;
}
for (i = 0; i < 15; i++)
{
mafdata[i] = mafdata[i+1];
mafsum += mafdata[i];
}
mafdata[15] = data;
mafsum += data;
data = mafsum / 16;
Are there any ways to speedup algorithm?
--
Best regards,
Roman Antoshchenkov
mailto:djantoxa@rambler.ruMessage
Moving average filter
2009-07-17 by Антощенков Роман Викторович
Attachments
- No local attachments were found for this message.