A moze cos takiego, tylko troszke pamieci do tego potrzeba :/
10 elementowa tablica unsigned int (10*2bajty): unsigned int tabl[10] i licznik pomocniczy unsigned char temp
co 100ms wywolujesz przerwanie w w ktorym: kasujesz licznik a to co tam jest wpisujesz do tabliczki pod indeksem temp; (licznik az sie prosi zeby hardware'owy wykorzystac, ale z tego co widze to jest juz zajety wiec liczyc bedziesz pewnie procedurka w przerwaniu...) temp zwiekszasz o 1 jesli (temp>9) => temp=0
jesli teraz chcesz obliczyc czestotliwosc to sumujesz wszystkie elementy tablicy
bedzie tam przeciez 10 ostatnich probek, powinno dzialac jak na moj rozum pytanie tylko czy masz tyle wolnej pamieci :/, zawsze mozna sie ograniczyc do 2-3 pomiarow na sek, a jesli nie mierzysz czestotliwosci powyzej 2550 Hz to mozna dac po tablice jednym bajcie (unsigned char)
pozdrawiam i powodzenia q00