logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Dlaczego wartości nie zaczynają się od najniższej częstotliwości? ATmega8/MSGQ7.

heyka 21 Wrz 2020 19:49 480 2
  • #1 18935497
    heyka
    Poziom 17  
    Witam, wykonałem wskaźnik wysterowania na Atmega8 i MSGQ7. wyświetlacz wykonałem na WS2812B, sygnał jest wzmacniany przez lm386. Odczytu napięć dla częstotliwości robię w pętli:
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Układ był złożony na płytce stykowej i wszystko ładnie chodziło, po wykonaniu płytki drukowanej mam następujący objaw: Wartości napięć odczytywane z MSGQ7 i wpisywane do tabeli nie zaczynają się za każdym razem od wartości odczytanej z najniższej częstotliwości. 63Hz, 160Hz, 400Hz, 1kHz, 2.5kHz, 6.25kHz oraz 16kHz.

    do tab[0] powinna być zapisana odczytana wartość napięcia dla częstotliwości 63 Hz a jest zapisywana wartość z przypadkowej częstotliwości, następne są już zapisywane po kolei. czyli jak w tab{0} na zapisze wartośc z częstotliwości 1KHz to do nastepnych zapisuje 2.5kHz, 6.25kHz, 16kHz,63 Hz, 160 hz, 400 Hz.
  • #2 18936374
    robiw
    Poziom 26  
    Hej,
    Poniżej jest sprawdzony i działający kod dla MSGQ7:

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Musisz też wziąć pod uwagę, iż na rynku można spotkać wiele z tych układów, które nie są w pełni sprawne. Mowa o tych z Aliexpress... robiw
REKLAMA