eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikadds ad9850 - dziwne zachowanie
Ilość wypowiedzi w tym wątku: 12

  • 1. Data: 2014-10-29 23:02:17
    Temat: dds ad9850 - dziwne zachowanie
    Od: Marek <f...@f...com>

    Witam,
    mam dziwny problem z tym układem. Działa inaczej niż opisuje
    datasheet.

    Na str. 8 datasheeta mamy wzór na obliczenie wartości jaką trzeba
    wpisać do rejestru konfiguracyjnego układu aby uzyskać żądaną
    częstotliwość Fout:

    Fout = (delta Phase * CLKIN ) / 2^32

    delta Phase - szukana wartość dla rejestru CLKIN - 125000000 Hz
    (kwarc układu)

    Po przekształceniu wzoru, mamy: delta Phase = (2^32 * Fout )
    /125000000

    np. aby uzyskać 1000Hz, do rejestru powinniśmy wpisać: delta Phase =
    ( 4294967296 * 1000) / 125000000 = 34359

    Ale jak wpisuję do rejestru 34359 to na wyjściu mam sinus ~34kHz a
    nie oczekiwany 1kHz. Jak wpiszę 1000 to na wyjściu mam ~1000Hz
    (oscyloskop tak podaje). Wygląda tak, jakby wpisywana wartość stawała
    się Fout.

    Gdzie robię błąd??

    --
    Marek


  • 2. Data: 2014-10-29 23:43:29
    Temat: Re: dds ad9850 - dziwne zachowanie
    Od: platformowe głupki <N...@g...pl>

    cos źle robisz mi taki wzór działa
    N= f&10^5 * 343,5973837


  • 3. Data: 2014-10-29 23:54:23
    Temat: Re: dds ad9850 - dziwne zachowanie
    Od: platformowe głupki <N...@g...pl>

    > N= f x 10^5 * 343,5973837
    f w MHz
    dla 1000 Hz mamy
    34359,7


  • 4. Data: 2014-10-30 08:18:05
    Temat: Re: dds ad9850 - dziwne zachowanie
    Od: "J.F." <j...@p...onet.pl>

    Dnia Wed, 29 Oct 2014 23:02:17 +0100, Marek napisał(a):
    > Fout = (delta Phase * CLKIN ) / 2^32
    > delta Phase - szukana wartość dla rejestru CLKIN - 125000000 Hz
    > (kwarc układu)
    > Po przekształceniu wzoru, mamy: delta Phase = (2^32 * Fout )
    > /125000000
    > np. aby uzyskać 1000Hz, do rejestru powinniśmy wpisać: delta Phase =
    > ( 4294967296 * 1000) / 125000000 = 34359
    >
    > Ale jak wpisuję do rejestru 34359 to na wyjściu mam sinus ~34kHz a
    > nie oczekiwany 1kHz. Jak wpiszę 1000 to na wyjściu mam ~1000Hz
    > (oscyloskop tak podaje). Wygląda tak, jakby wpisywana wartość stawała
    > się Fout.

    Jak widac Fout jest pwoporcjonalna do wartosci, ale nie tak.

    > Gdzie robię błąd??

    Nie odwrociles gdzies bitow/bajtow ?

    Sprobuj wpisac 1001, 1002, 1003 - moze sie wyjasni.

    A o slowie W0 pamietales ?


    J.


  • 5. Data: 2014-10-30 09:32:39
    Temat: Re: dds ad9850 - dziwne zachowanie
    Od: Marek <f...@f...com>

    On Thu, 30 Oct 2014 08:18:05 +0100, "J.F."
    <j...@p...onet.pl> wrote:
    > Nie odwrociles gdzies bitow/bajtow ?

    To było pierwsze co sprawdziłem. Wpisuje 30000 to na wyjściu sinus
    30kHz, wpisuje 100 to na wyjściu 100 Hz. Jakieś jaja normalnie.

    > A o slowie W0 pamietales ?

    Tak, używam go zaincjowania transmisji szeregowej (w0=xxxxx011) a
    później szeregowo, czyli napierw 32 bity freq od lsb do msb (swoją
    druga czemu w datashicie wcześniej nazywają ten parametr delta phase,
    a później przy opisie transmisji nazywają freq co sugeruje
    frequency). Później 8 bitów 0 zero (2 bity control + 1 bit power + 5
    phase), razem 40.

    --
    Marek


  • 6. Data: 2014-10-30 16:18:29
    Temat: Re: dds ad9850 - dziwne zachowanie
    Od: Marek <f...@f...com>

    On Thu, 30 Oct 2014 08:18:05 +0100, "J.F."
    <j...@p...onet.pl> wrote:
    > Nie odwrociles gdzies bitow/bajtow ?

    Eh starość, oczywiście był błąd w 5 bitach fazy. Było wysyłane 2 a
    nie 5, przez co fq_up był po 37 bitach a nie po 40. Ciekawe że dawało
    to efekt zbliżonej Fout do tego co wpisało się do pierwszych 32
    bitów. Teraz działa ok.

    --
    Marek


  • 7. Data: 2014-10-30 17:01:09
    Temat: Re: dds ad9850 - dziwne zachowanie
    Od: "J.F." <j...@p...onet.pl>

    Użytkownik "Marek" napisał w wiadomości grup
    On Thu, 30 Oct 2014 08:18:05 +0100, "J.F."
    >> Nie odwrociles gdzies bitow/bajtow ?
    >Eh starość, oczywiście był błąd w 5 bitach fazy. Było wysyłane 2 a
    >nie 5, przez co fq_up był po 37 bitach a nie po 40. Ciekawe że dawało
    >to efekt zbliżonej Fout do tego co wpisało się do pierwszych 32
    >bitów. Teraz działa ok.

    Jak pisales - zawyzalo czestotliwosc ok 34 razy.
    Ale 32 to jest 5 bitow roznicy, a nie 3 (5-2) :-)

    J.


  • 8. Data: 2014-10-30 17:10:09
    Temat: Re: dds ad9850 - dziwne zachowanie
    Od: "J.F." <j...@p...onet.pl>

    Użytkownik "Marek" napisał
    >Tak, używam go zaincjowania transmisji szeregowej (w0=xxxxx011) a
    >później szeregowo, czyli napierw 32 bity freq od lsb do msb (swoją
    >druga czemu w datashicie wcześniej nazywają ten parametr delta phase,
    >a później przy opisie transmisji nazywają freq co sugeruje
    >frequency).

    No bo to to samo :-)
    Wartosc o ktora zmieniaja faze w kazdym kroku okresla jednoczesnie
    czestotliwosc.

    J.


  • 9. Data: 2014-10-31 01:27:19
    Temat: Re: dds ad9850 - dziwne zachowanie
    Od: Marek <f...@f...com>

    On Thu, 30 Oct 2014 17:10:09 +0100, "J.F."
    <j...@p...onet.pl> wrote:
    > No bo to to samo :-)
    > Wartosc o ktora zmieniaja faze w kazdym kroku okresla jednoczesnie
    > czestotliwosc.

    Ale tam jest też wysyłana faza (oprócz freq).

    --
    Marek


  • 10. Data: 2014-10-31 10:38:18
    Temat: Re: dds ad9850 - dziwne zachowanie
    Od: "J.F." <j...@p...onet.pl>

    Użytkownik "Marek" napisał w wiadomości grup
    On Thu, 30 Oct 2014 17:10:09 +0100, "J.F."
    <j...@p...onet.pl> wrote:
    >> No bo to to samo :-)
    >> Wartosc o ktora zmieniaja faze w kazdym kroku okresla jednoczesnie
    >> czestotliwosc.
    >Ale tam jest też wysyłana faza (oprócz freq).

    Ale to jest faza stala.
    A w kazdym kroku jest faza zmieniana o ... delta phase, co wyznacza
    czestotliwosc.

    J.

strony : [ 1 ] . 2


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: