GPSDO - jak skorygować
help me :D
    antek pisze:

    Mierzenie częstotliwości z taką dokładnością za pośrednictwem analizatora to takie lekkie nieporozumienie. Jak chcesz to dokładnie zmierzyć to wystarczy połączyć kilka liczników cyfrowych i sterować je z impulsu 1pps z drugiego GPS. A jak chcesz jeszcze dokładniej to ten 1PPS też podziel przez 10. Powstanie precyzyjny częstościomierz w wersji hm. Mierzacy z dokładnością 0.1Hz Stosowanie procka do takiego pomiaru jest mało precyzyjne, bo obsługa przerwania też chwilę trwa, a jak w procku pracuje więcej niż jedno przerwanie, to zaczyna się robić rzeźnia. Bez rozwiązań sprzętowych tak fmiarka jest do dupy.


Dlatego mówię o 32 bitowym procku, taktowanym np. 72 czy 100MHz tak, by mieć czas na obsługę tego wszystkiego. Poza tym na przykład w STM32F411 (chińska płytka "black pill", tania jak barszcz) masz 32 bitowy licznik, sprzętowy. Podajesz sygnał z generatora na EXTI, a HW procka samo podnosi wartość rejestru, wg datasheetu można tam pchać sygnały do 100MHz. W przerwaniu z pinu PPS odczytujesz wartość rejestru, zerujesz licznik i wypychasz te 4 bajty na UART. Na współczesnej architekturze, z DMA itd zajmie to tylko kilka cykli procesora. Może nawet dosłownie 3 cykle. Szczerze mówiąc czasu powinno wystarczyć nawet na STM32F103, jeszcze tańszym, taktowanym 72MHz bez 32 bitowego licznika, robiąc to wszystko na rdzeniu. Masz około 7 cykli na impuls GPSDO.
Zawsze możesz też zmniejszyć częstotliwość GPSDO do 5MHz, żeby dostać 2 razy więcej czasu, albo 1MHz, żeby dostać 10 razy więcej czasu, jak tak bardzo się boisz.

A te dane z UART możesz odbierać na kompie, czy nawet drugim procku, którego zadaniem będzie tylko uśrednić wynik i go wyświetlić - ten może być już znacznie wolniejszy. Uśredniasz przez godzinę i wiesz wszystko.


  PRZEJDŹ NA FORUM