Elektroda.pl
Elektroda.pl
X
PCBway
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Jak zrobic na procku generator sinusa trojkata i pily i ...

29 Lis 2003 00:48 9744 34
  • Poziom 17  
    Jak zrobic na procesorku np. serii X51 lub AVR 2313 generator sinusa trojkata ,pily i innych sygnalow. Czy to trudne i jak zmieniac czestotliwosc wyjsciowa tych przebiegow?
  • PCBway
  • Poziom 31  
    Najlepiej byłoby zbudować jakikolwiek przetwornik C/A i za jego pomocą generować przebiegi. Najprostszy taki przetwornik to 8 rezystorów o wartościach w kolejności np. D7 - 1k, D6 - 2k, D5 - 4k, D4 - 8k, D3 - 16k, D2 - 32k, D1 - 64k, D0 - 128k i to wszystko. Drugie końce rezystorów podłączyć razem. Do tego przydałby się jakiś wtórnik i po sprawie. Dla perfekcjonistów - można użyć DSP, ale to rozwiązanie drogie i dość kłopotliwe.
    Pozdrawiam.
  • Poziom 42  
    Miałem taki projekt na uczelni, zrobiliśmy to troche metodą "studenta" żeby się jak najmniej napracować. Otóż chodzi sobie procedura na timerze która wysyła kolejne próbki z pamięci do DAC, ilość próbek jest regulowana zmienną. W przypadku sinusa ustawiamy obszar zmiennych na stałą tablice w pamięci procka, w innym przypadku mamy procedure która generuje próbki pobierając 4 wartości (0-255) czas opóźnienia, czas narastania, czas "trwania", czas opadania. Na podstawie tych wartości są generowane próbki i obliczana jest ilość próbek. Timer pracował w trybie autoładowania (był to procesor SAB80535) i wartością ładowaną regulowaliśmy częstotliwośc (0-255). Przeliczanie częstotliwości z "magicznych" stałych uznaliśmy za zbyt skomplikowane (czytaj sesja się zbliżała) i projekt był zaliczany w takiej postaci. Na podstawie tych 4 zmiennych można generować dowolne sygnały piły, trójkąta, prostokąta i trapezu.
  • Poziom 27  
    jest taki stary scalaczek - ICL8038 czy jakoś tak - generuje prostokąt, sinus i trójkąt do jakichś 100kHz. Strojenie odbywa się poprzez zmianę stałej czasowej obwodu RC. Więc może coś takiego? Z drugiej strony do takich rzeczy świetnie nadają się układy DSP. Najciekawsze są metody generacji sinusoidy (są co najmniej 3).
  • Poziom 32  
    ja tylko powiem xr2206 i max038
  • Poziom 31  
    Ten ostatni jest godny polecenia (MAX038). Ma jednak jedną zasadniczą wadę - wysoką cenę. Poza tym może być.
    Pozdrawiam.
  • Poziom 32  
    zapewniam cie ze max moze byc tanszy niz myslisz - ja mam 2 :)
    Nic wiecej nie powiem główkujcie.
  • Poziom 31  
    Eee, po co. Prywatnie zamierzam robić moduł z DSP zapięty na magistrali komputera, nie będę sobie głowy zawracał MAX'em. To była tylko propozycja.
    Pozdrawiam.
  • PCBway
  • Poziom 30  
    w sumie generator pily nie jest taki trudny - tylko dwie funkcje proste. Wlasciwie to tylko jedna a nachylenie inne. W tej chwili nie bardzo pamietam z matmy ale to sie chyba wyraza wzorem y=ax+b. Y to jest wartosc ktora dostaniemy, X to aktualna wartosc czasu, a to wspolczynnik nachylenia, a b w tym przypadku mozna pominac(zaczynamy od zera). Jest to dosyc proste nawet w asemblerze(nie wiem bo nie umiem) ale wystarczy pomnozyc dwie liczby - tyle to chyba sie zalatwia jednym poleceniem. Trojkat jest prost ale sinus? chyba tylko jezyki wysokiego poziomu albo wartosci z tablicy. Co do wyjascia to rzeczywiscie przydalby sie jakis DAC.
  • Poziom 25  
    Nemo napisał:
    zamierzam robić moduł z DSP zapięty na magistrali komputera

    to rozwiązanie to juz "luksus" . Też przymierzam się do tego i stawiam na TMS320F241 i TLC320AC01 jak widać oba scalaki dostępne są jako sample w TI. A może jast ktoś na forum co juz wykonał podobne urządzonko ??.

    Tu jest pare informacji i plików:
    ftp://ftp.mlabsys.com/sft/
    http://www.musicdsp.org/
    http://www.mlabsys.com/
    http://141.19.61.198/fa/Daten_FH.htm
  • Poziom 31  
    Myślę raczej o czymś Analog Devices. Raczej starszym. Kiedyś w 1995 roku był ciekawy artykuł o generatorze na DSP. Pójdę tym śladem, tylko pewnie zastosuję coś nowszego. Ale to raczej sprawa na później. Na razie jestem załadowany. Jak coś wykombinuję, dam na forum.
    Pozdrawiam.
  • Poziom 25  
    Nemo napisał:
    Kiedyś w 1995 roku był ciekawy artykuł o generatorze na DSP.
    masz na mysli artykuł w Elektorze o karcie do PC z procem DSP Analoga ??. czy coś innego.
  • Poziom 31  
    Tak, ten sam. ADSP2105. Niestety, chyba jest on trochę za cienki do tak wysokiej ceny. Patrzyłem na notę ADSP2101. Ciekawe, i wytrzymuje na dodatek 25MHz. Szybko jednak doszedłem to pewnego wniosku.
    DSP jest bardzo dobrym narzędziem do obróbki dźwięku. Do generowania prostych przebiegów jego użycie jest po prostu marnotrawieniem mocy obliczeniowej. Pomyślałem chwilę i doszedłem do wniosku, że zastosowanie jakiegoś szybkiego AVR'a z przetwornikiem 16 bit może załatwić sprawę i będzie tańsze. Być może zweryfikuję to twierdzenie w praktyce.
    Pozdrawiam.
  • Poziom 25  
    Nemo napisał:
    DSP jest bardzo dobrym narzędziem do obróbki dźwięku. Do generowania prostych przebiegów jego użycie jest po prostu marnotrawieniem mocy obliczeniowej.

    jeszcze raz zachęcam Cie do zapoznaia się z 320F241. Jest darmowy a więc nic nie tracisz. A czy jest to marnowanie mocy, ja bym powiedział, że wykorzystanie możliwości proca nie w pełni ale.... :-).
    Pozdrawiam i zachęcam wszystkich do zapoznania się z techniką DSP. W pewnych dziedzinach (projektach) nie da się uciec od tych procków. Zastąpienie innym '51 czy AVR-em to zbedne komplikowanie PCB i softu a tu wszystko w jednym. Moze i na tym forum z czasem powstanie "kółko dyskusyjne o DSP" Byłoby SUPER.
    Nara.
  • Poziom 31  
    Tak, masz rację, ale... Zawsze muszę mieć jakieś ale :D
    W przypadku darmowych próbek jest takie niebezpieczeństwo, że po okresie próbnym, scalaki te są dostępne np. w ilościach powyżej 10.000 sztuk. Czyli konstrukcja nie może być powielona bez trudu. Jeśli zbuduję coś na popularnych elementach mam niejako gwarancję, że będzie to odtwarzalne i jutro, i być może za rok. Poza tym jak coś mi się zepsuje, nie będę tego miał jak naprawić.
    I jeszcze jedno. Programowanie. Konieczność nauki nowego asemblera, poszukiwanie (lub pisanie własnych) narzędzi do pracy i tym podobne. W przypadku popularnych układów albo coś mam gotowego, albo jestem w stanie napisać. Dlatego na razie raczej myślę o jakimś AVR'rze.
    Pozdrawiam.
  • Poziom 17  
    Dzieki za pomoc. Na pewno cos z tego wykorzystam bo chcialbym miec jakis generatorek,a procki stwarzaja niezle mozliwosci, a jeszcze jak jest tak fajnie to polaczone z kompem to jeszcze fajniej.
    Dzieki za odpowiedzi

    Zapomnialem zapytac o to czy moge w czasie pracy programu zmieniac wartosc timera bo chcialbym zmieniac czestotliwosc i chyba trzeba zastosowac wewnetrzny timer tylko nie wiem jak zmieniac ten czas czy jakies petle, warunki zastosowac??
  • Poziom 18  
    NEMO po pierwsze w przypadku TI (jak zerszta i innych producentow scalakow) probki sa dla celow testowych, prototypowych itp. Wiec okres nie ma czegos takiego jak okres probny. To producent usatala czy dac cos jako probke, czy nie.

    Po drugie wkurzyles mnie swoja odpowiedzia ...po okresie próbnym, scalaki te są dostępne np. w ilościach powyżej 10.000 sztuk. Czyli konstrukcja nie może być powielona bez trudu. Chciales skur... sprzedawac produkty zrobione na probkach? Nie umiesz angielskiego? Nie wiesz, ze probki sa dostepne TYLKO DLA CELOW NIE KOMERCYJNYCH co znaczy ze NIE robimy masowaj produkcji na probkach :evil: !!! Probki sa reklama, ktora ma celu pozniejsze kupno masowe tych ukladow scalonych, ktore reprezentuje probka!!!
    Moglem sie spodziewac tego po innych, ale nie po Specjaliscie 1 poziomu!
  • Poziom 27  
    Sanjuro - co się tak wściekasz? To przecież oczywiste - sam miałem ten problem. Co z tego, że mogę sobie zamówić 1 próbkę i zrobić jedno urządzenie, jeśli do wyprodukowania kilku kolejnych będę musiał kupić 10.000 sztuk?

    To jest duży problem w Polsce - dostępność układów. Co innego zamówić darmową próbkę, a co innego kupić w Polsce ten sam układ. Wiem, bo straciłem kupę czasu podczas mojego ostatniego projektu, żeby tak dobrać wszystkie układy scalone, żeby były one bez problemu dostępne w Polsce w ilościach detalicznych i po rozsądnej cenie. Nigdy nie miałeś takiego problemu?
  • Poziom 18  
    Sorry, ale jestem ostatnio podminowany, bo szukam pewnego scalaczka i co znajde cos co mi odpowiada do potrzeb, to Polska jest poza lista programu darmowych probek (a najpierw trzeba sprobowac czy to jest to co sie spodziewam, nie jestem bogaty, by kupowac kazdy scalak jaki po przejrzeniu pdf'a stwierdze, ze sie nada do moich celow, a nieraz nawet jestem gotow zaplacic, ale cos olewaja ludzi z Polski :( ). A takie cos ma miejsce z kilku przyczyn:

    1) Nasz ukochany rzad nie chce by Polska sie rozwijala technologiczie (wysokie: ceny, stawki VAT, oplaty celne - a wszystko po to bo trzeba tych ***** utrzymywac :evil: )

    2) Wcholere jest ludzi, ktorzy mysla, ze tanim kosztem sie dorobia (cos jak urzednicy i poslowie, z tym, ze ci musza sie o 1 stopien wiecej trudzic) albo na sprzedarzy samych probek albo na urzadzeniach zbudowanych z probek (oczywiscie licza sobie cene jakby to kupili, zaplacili clo i VAT)

    A to co sugeruje NEMO to podchodzi pod punkt 2 (chyba, ze zle mnie nauczyli w szkole czytac :? ) czyz nie?

    Co do tych 10,000 sztuk to przesadzacie. Duzo firm orientuje sie, ze nie zawsze produkcja jest az tak masowa. TI sprzedaje tez mniejsze ilosci (chyba specjalnie dla biedna Polska firma :P ). A co do wysokich cen... patrz punkt 1 :(
  • Poziom 31  
    :arrow: Sanjuro: No toś mnie bracie wkurzył... :evil:
    Bezmyślność twojej wypowiedzi mogę jedynie tłumaczyć twoim brakiem doświadczenia. Pomyśl logicznie...
    Miałem na myśli, że zrobię sobie prototyp jakiegoś urządzenia na próbce - spodobało mi się, mam odbiorców powiedzmy na 100 sztuk. A tu dowiaduję się, że muszę kupić 10.000 i to przez pośrednika z np. Niemiec, bo na skutek handlu próbkami w Polsce nasz kraj ma embargo na właśnie ten typ układu.
    Nie wiem, jak z mojej wypowiedzi można było wyciągnąć tak absurdalne wnioski, jakie napisałeś. Jak widać, daj człowiekowi słowo, a on dopisze całą encyklopedię...
    :!: Nie oskarżaj nikogo pochopnie, zanim nie poznasz sprawy. Bo trafisz pewnego razu na kogoś, kto wyegzekwuje przeprosiny w bardziej drastyczny sposób. :!:
    Pozdrawiam.
  • Poziom 12  
    JA PIER.ICZE! Ludzie! DSP do generowania sinusai i piły!? może jeszcze wahadłowiec kosmiczny do transportu węgla?! :D Czy słyszycie co wy piszecie????? Inaczej. Czy wiecie co znaczy : "Przerost formy nad treścią" No chyba że macie za dużo czasu, kasy, lub w celach naukowo-hobbystycznych. Swoją drogą chciałbym zrobić sobie mrugającą diodę LED, co proponujecie, ATMega, PowerPC, Sun Silicon Graphics? .................
  • Poziom 16  
    :arrow:Kwiatek X
    A co cie tak boli w pomysle zaprzegniecia do budowy generatora procesora DSP? DSP wchodzi we wszystkie dziedziny zycia i znajomosc obslugi procesora jest jak najbardziej na miejscu. Zreszta, twoja sprawa...
  • Poziom 12  
    Ano w pełni się zgadzam że jest to temat na czasie, jednak bydowanie generatora sinus na nim, chyba przyznasz że to jak strzelanie z armaty do mrówki. Przyznasz też że DSP to nie byle peryferia tylko PROCESOR za którym 51 "nie nadąży", nie mówiąc o tym że większość DSP ma 16 bitową architekturę i przetwarzają dane w czasie rzeczywistym- z resztą po co o tym pisać.... Jak się ktoś upiera nad takim rozwiązaniem- życzę powodzenia i sory że się wtrąciłem......
  • Poziom 27  
    Kwiatek X - zrób dobry generator sinusa pracujący do 1MHz z 32-bitową precyzją, z odpowiednio małym THD, z możliwością modulacji AM i FM itd. na 8051...
  • Poziom 42  
    h-doc napisał:
    Kwiatek X - zrób dobry generator sinusa pracujący do 1MHz z 32-bitową precyzją, z odpowiednio małym THD, z możliwością modulacji AM i FM itd. na 8051...
    Ciekawe który DSP coś takiego potrafi.
  • Poziom 31  
    Są takie DSP, ale kosztują dość dużo... (o ile dobrze zrozumiałem intencje przed-przedmówcy, chyba z 500 MIPS wystarczy) :)
    Poza tym generator na DSP i piła, czy sinus to tylko jedno z zastosowań. Do tego można wrzucić naprawdę sporo, a w szczególności przebiegi o bardzo dziwnym wyglądzie. A coś mi się wydaje, że w złomowanych nagrywarkach Philips CDD-2600 i pokrewnych jest właśnie ADSP2105 w PLCC. Coś takiego można kupić za grosze, a w środku jest jeszcze kilka podobnie ciekawych scalaczków (np. MC68000, czy spory Flash).
    Pozdrawiam.
  • Poziom 12  
    Buahahahahaaaa!!!!!!!!!! :lol:

    "Kwiatek X - zrób dobry generator sinusa pracujący do 1MHz z 32-bitową precyzją, z odpowiednio małym THD, z możliwością modulacji AM i FM itd. na 8051..."

    A po co komu taka precyzja!!!!!!! Pamiętaj kolego że nawet najlepsze DSP żadko mają przetwornik C/A o rozdzielczości większej niż 20bit (o rzeczywistej dokładności około 18bit) dlaczego? Ano dlatego że większej rozdzielczości nie ma sensu robić, rozdzielczość 16 bitów można traktować jako wzorcową. Przy rozdzielczości 32bitów nap. odniesienia musiałoby być dzielone na 4 294 967 296 poziomów czyli przy nap. odn. 5V , na LSB przypadałoby 0,0000000012 V (!) Pytam zatem co dać na wyjściu takiego przetwornika (o ile taki istnieje) aby tak małego napięcia nie zaszumić???
    ....a na 8051 takiego generatora nie zrobię, ty na DSP też.... ale chyba nie o to chodziło autorowi pierwszego posta z tej serii. Nemo proponował 8bitową drabinkę rezystorową to jak najbardziej nadaje się do takich zastosowań, tani DAC08 da już całkiem zadowalające przebiegi, zastosowanie 12bitowego DAC da profesfonalny generator w.w. funkcji
  • Poziom 27  
    Kwaitek X - co Cię tak śmieszy?
    Precyzja się przydaje - zobacz sobie na sprzęt (lub też oprogramowanie) do edycji dźwięku. Współczesne rozwiązania bazują na 32-bitowej precyzji (również zmienny przecinek). Ta nadmiarowa precyzja przydaje się, ponieważ zapewnia swobodę przy manipulacji sygnałem bez utraty końcowej precyzji lub też bez ryzyka utraty stabilności (w przypadku stosowania np. filtrów IIR). To jest normalna praktyka - nawet jeśli przetworniki C/A są 24, 18 lub 16 bitowe, dobrze jest wykonywać obliczenia z większą precyzją.

    pozdrawiam!