Możliwe, że zasilacz układ napięciem 5V, a napięcie odniesienia masz 1,1V bądź 2,56V. W takim wypadku będzie dostępne jedynie ~1/4 obrotu lub połowa. By był cały obrót ustaw napięcie odniesienia avcc z kondensatorem podpiętym do gnd, ewentualnie zastosuj dzielnik napięcia
@EDIT
A, to nie będzie to
Przepraszam, teraz zauważyłem chyba gdzie leży błąd, ADC 10 bitowy ma zakres 0-1023, w twoim kodzie linia "if(wynik>500) wynik=500;" po prostu nie przyjmuje połowy wartości (od połowy obrotu), jeśli chcesz uzyskać wynik np. 0-511 to po prostu podziel wynik na dwa.
Jeśli chcesz uzyskać dokładny wynik 100-500 na pełnym zakresie potencjometru to możesz zrobić coś takiego:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Tylko w takim wypadku, zmienna wynik musi być minimalnie 32bitowa.