Я об этом уже писал, но товарищ не читатель, он писатель
Добавлено через 5 минут(ы):
Зачем после наименования функции стоят две скобки? Так вот, туда пишется аргумент функции, в данном случае аргумент это m.
Т.е. вместо выражения:
m=0;
PORTD = 0x0F;
f1();f2();f3();
m=2;
f1();f2();f3();
Пишем:
PORTD = 0x0F;
f1(0);f2(0);f3(0);
f1(2);f2(2);f3(2);
Так вызывается функция с аргументом. В самой функции вместо:
f1(){PORTD &= ~ _BV(m); _delay_ms(3000);}
пишем:
f1(m){PORTD &= ~ _BV(m); _delay_ms(3000);}
Ну и так далее.