Sinusovka z obdelniku

Daniel Valuch daniel.valuch@wanadoo.fr
Středa Leden 5 16:55:42 CET 2005


presne toto sa vola DDS a od analog devices je k dostaniu hotovy 20 
pinovy chrobak uz od $5 :-) ale tiez ma sere ked nieco vymyslim a potom 
zistim ze to uz niekto vymyslel :-))))
balu



jiri@bezstarosti.cz wrote:

>Popisu jeden algoritmus ke generovani sinusovky, sice nic noveho (kdyz na
>neco prijdu, vzdycky mam nejake to stoleti, minimalne desetileti, zpozdeni),
>ale treba to nekdo nezna, i kdyz tady bych se skoro divil :).
>
>Tedy mam tabulku, dejme tomu 64kB 8b cisel, ktera popisuji sinus hodnotami 0
>az 255. Ukazatel ukazuje do teto tabulky a je 16b, tedy preteka dokola. Dale
>mame nejakou vstupni hodnotu a tu pricitame k ukazateli a kam ukaze,
>vyhazujeme hodnotu ven na DAC.
>
>Tedy prikladem ukazatel stoji na 0, vyhodim obsah tabulky kam ukazuje ven, v
>dalsim case prictu vstup, treba 120, ukazatel posunu o tech 120 a sup
>hodnotu ven atd. Tim vypoustim ven sinus, kde jeho frekvence je dana vstupni
>hodnotou, kterou pricitam a co vice, frekvence sinu je s hodnotami na vstupu
>v prime umere, tedy cim vyssi hodnota na vstupu, tim vyssi frekvence sinu a
>to naprosto linearne. Sinus je pak popsan cim je vyssi frekvence, tim mensim
>poctem vzorku na periodu, ale je stale stejna vzorkovaci frekvence.
>Predstavme si, ze kmitocet brani vzorku z tabulky je 10MHz, pak pro 100kHz
>sinusovku mame k dispozici 100 vzorku na periodu sinu.
>
>Reseni z toho co se koupi v kazde dobre drogerii je CPLD + FLASH. CPLD
>nataktuji nejakou vyssi frekvenci, udelam mu paralelni vstup hodnoty k
>pricitani, treba se zachytnym registrem a strobovanim a prenosem 2x po 8b
>(vyssi, nizsi bajt) atp., tedy jako DATA + ADDR + /WR, at to mohu povesit
>nekam na sbernici. No a z CPLD vede adresovka na FLASH s tabulkou vzorku, za
>FLASH je DAC (s kusem zachytneho registru) na datovych dratech a CPLD do DAC
>(do zachytneho registru) provadi zapisy jednim dratem. 10M vzorku/sec. bych
>z te FLASH vymacknout mohl.
>
>Rozsah frekvenci je dost znacny, tedy v tomto konkretnim pripade bude od 0Hz
>v kroku zhruba 152.6Hz po nejakych dejme tomu 500kHz, kde jeste stale budeme
>mit alespon 20 vzorku na periodu. No a filtr za tim celym musi resit jen tu
>vysokou vzorkovaci frekvenci, tedy resit zakulaceni toho schodoviteho sinu,
>ale to uz neni az takovy des, kdyz vzorkovani je na 10MHz a propustit mame
>maximalne 500kHz.
>
>Je naprosto jasne, ze specializovany obvod tohle vsechno vyresi a bude to i
>malinke, ale zdalo se mi fajn trochu osvetlit tento princip generovani sinu
>(nebo i jineho periodickeho prubehu).
>
>--
>Jiri Bezstarosti
>_______________________________________________
>HW-list mailing list  -  sponsored by www.HW.cz
>Hw-list@list.hw.cz
>http://list.hw.cz/mailman/listinfo/hw-list
>
>
>  
>



Další informace o konferenci Hw-list