JanuszR
Guest
Wed Mar 10, 2010 11:43 pm
JanuszR pisze:
Quote:
Kiedyś popełniłem takie cudo na PWMie od atmelka, chodziło do 3 kHz.
Ale tak da sie regulować amplitudę tylko w zakresie L-H TTL !
Chyba że dołożyłeś do "czystego" PWM jakiś dodatkowy układ ?
Amplitudę da się regulować w zakresie 8 lub 16 bit. Czyli amplitudę
można regulować bardzo precyzyjnie. Na tablicę sinusoidy nakładasz
mnożnik zmieniający szerokość każdej próbki. Masz tablicę z próbkami o
szerokościach na full a do pracy wykorzystujesz tablicę, której każdy
element został podzielony przez wzmocnienie. Czyli zmiana amplitudy trwa
tyle co przeliczenie np. 256 próbek stanowiących ćwiartkę sinusoidy. Na
wyjściu oczywiście kondensator eliminujący składową stałą plus filtr,
wystarczy pierwszego rzędu.
Ja wykorzystałem tablicę o próbkach 16 bitowych co przy 1024 próbkach
dało wierną sinusoidę ale przy 3kHz musiałem już przeliczać czas
realizacji instrukcji na przerwaniach. Implementacja oczywiście w
assemblerze.
JanuszR
Robbo
Guest
Thu Mar 11, 2010 12:43 am
Błędnie podałem. W tych dwóch projektach
stosują wzmiacniacze o programowalnym wzmocnieniu.
Natomiast Mario pisał o four quadrant multiplying dac.
Ja chyba jednak będę stosował to, o czym pisał Mario,
gdyż tu można uzyskać większą rozdzielczość regulacji
niż w tych wzmacniaczach (przynajmniej nie znalazłem
żadnego rozsądnego na stronie Analog Devices).
Rozważam jeszcze układ AD9852, który ma na pokładzie
możliwość regulacji programowej zarówno częstotliwości
oraz amplitudy. Niemniej tu trochę obawiam się problemów
z lutowaniem takiego układu, a ponadto same peryferja
wydają się trochę skomplikowane.
Robbo