Licznik na Arduino Uno
    djbpm pisze:

      sp9ds pisze:

      Wg datasheetu tylko 8-bitowy Timer2 może być zasilany zegarem z zewnątrz bez synchronizacji z clkIO, ale jego źródło zegara to pin TOSC1, czyli jeden z pinów na którym chcesz mieć kwarc. W związku z tym pomiar tego okresu np. 1 sek czy ile tam chcesz nie będzie precyzyjny i taki pomiar będzie miał badziewną jakość.
    O widzę, że zaglądnąłeś do datasheet, to się chwali wesoły. Zamiast kwarcu lepiej jest użyć TXCO, i zliczać drugim timerem impulsy z TXCO i tym bramkować. A procek niech chodzi z oscylatora RC. Jedyny minus, to że RC ma chyba max 8MHz, więc się robi ciasno. Nie wiem ile biblioteka Arduino potrzebuje czasu na wejście i wyjście z przerwania, bo przerwanie z częstotliwością 100kHz może się okazać niemożliwe do wyrobienia przy 8 MHz zegara (czyli co 80 cykli przy 25,5 MHz częstotliwości mierzonej). Ja to robiłem w assemblerze, tam wejście w przerwanie, dodanie do licznika przepełnień wyjście i powrót się bez problemu wyrabiało.
    Ale może faktycznie nie warto tracić czasu, bo:
      sp9ds pisze:

      AVR to już trochę pieśń przeszłości. Polecam nauczyć się np. STMów wesoły
    Na pewno zaprocentuje to w przyszłości.


Tylko jeden z timerów może pracować z zegarem z zewnątrz i jest to Timer2. Reszta jest synchronizowana do zegara clkIO.


  PRZEJDŹ NA FORUM