Generator o zmiennym wype?nieniu i cz?stotliwo?ci

Nov 17, 2007 9 Replies

Potrzebuję zbudować generator z 8 wyjściami wysterowywanymi jak rejestr przesuwający w sposób pokazany jak np. na rys.

formatting link
Układ musi posiadać dwie niezależne regulacje częstotliwości i długości trwania impulsu, przy czym w szczególnych przypadkach układ nie może pozwolić na ciągłe wysterowanie wyjść poziomem 1 w przypadku kiedy czas wypełnienia będzie ustawiony większy niż częstotliwość.



Częstotliwość pracy od 10 Hz do 14 kHz.



Umiem zrobić układ o zmiennym wpółczynniku wypełnienia, i osobno o zmiennej częstotliwości, ale żeby było jedno i drugie - chyba nie bardzo. Proszę o sugestie jak to zrealizować


Witam, To robota akurat dla atmelka

PS. Dawno temu robiłem na atmelkach dwukanałowe generatory sinusoidalne od herców do parunastu kiloherców z regulacją poziomu zrealizowaną wypełnieniem prostokąta. Ciężko było liczyć czas wykonania procedur pisanych w assemblerze ale zapewniam da się, znacznie łatwiej niż na PICach. Nikomu też nie życzę takiej pracy. Czas spędzony może być usprawiedliwiony jedynie poprzez hobby, żadna firma nie zapłaci adekwatnych pieniędzy.

JanuszR

Strasznie musiałes przezyc taka bezsensowna robote, ze jeszcze tera wspominasz. Pamietaj - od liczenia czasu sa timery, a nie programisci. Tamte czasy minely.

osiagnal dobry rezultat to satysfakcja go zzera :-)

Tylko ze jeszcze trzeba im co chwile nowe wartosci zapowiadac, jesli to ma byc sinusoida przez PWM.

J.

J.F. pisze:

No i co z tego? Przecież to bułeczka z masełkiem. Czy realizacja jest czysto programowa, czy wspomagana timerami, to nowe wartości trzeba obliczać tak samo często (jeśli wymagania względem przebiegu wyjściowego nie ulegają zmianie).

pzdr mk

Nie trzeba obliczać, szkoda czasu, lepiej ztablicować. Co do timerków to kolega zapomniał, że owszem są, generują jakieś tam prostokąty. Kiedy chcemy aby to była sinusoida, dodatkowo o regulowanej amplitudzie, przy parunastu kilohercach, nie stać nas na szastanie czasem odebrania przerwania czy czasem jego wykonania. Inaczej zamiast sinusoidy będą schody.

JanuszR

JanuszR pisze:

Tak czy siak, oba rozwiązania można można stosować do rozwiązania z timerem i pure-soft.

A czemu nas nie stać? Jaki jest ekstra koszt obsłużenia przerwania? Nie stać na dodatkowe, co najwyżej, kilka procent obciążenia? Procesor się nie wyrabia? No to dać o te parę procent mocniejszy! Zyskamy na elegancji rozwiązania, zaoszczędzimy sporo pracy, a za kilka procent mocniejszy procesor zapłacimy prawie nic więcej.

pzdr mk

Umiem zrobić układ o zmiennym wpółczynniku wypełnienia, i osobno o zmiennej częstotliwości, ale żeby było jedno i drugie - chyba nie bardzo. Proszę o sugestie jak to zrealizować

akumulator fazy, wyjscie przepelnienia to twoje f, do tego modulator PWM i po klopocie. (inna sprawa jest rozdzielczosc tego PWM - normalnie uzyskasz 8 - 12 bitow max)

Widzę, że rozpętałem burzę w szklance wody :). Napisałem przecież wyraźnie "dawno temu", dziesięć lat a może więcej. Procek 16MHz był wtedy demonem prędkości.

JanuszR

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required