logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[ATtiny2313][Bascom] Stroboskop

nunch 10 Cze 2011 19:12 1073 2
REKLAMA
  • #1 9597449
    nunch
    Poziom 12  
    A więc chodzi mi o zrobienie stroboskopu, który posiada funkcję regulacji jasności świecenia i częstotliwości.
    Wyjście z pod PWMa jest doprowadzone pod tranzystor, który wzmocni sygnał dla LEDów.


    Mój problem polega,na tym że nie za bardzo przychodzi mi myśl jak połączyć regulację jasności z częstotliwością.

    Częstotliwość byłaby prostą sprawą. Wystarczyłaby zmienna, która po przepełnieniu licznika w odpowiednim czasie, cyklicznie resetuje i setuje wyjście.
    Tylko jak to zrobić z PWM?
    Zrobić to na 2 licznikach?
    Jeden od PWMa będzie przechowywał jasność(T1),a drugi zliczać czas(T2).
    Dodatkowa zmienna(Z1) będzie przechowywać ustawioną wartość na PWM.
    A po przepełnieniu licznika T2 licznik T1 będzie przybierał raz 0 a raz wartość z Z1.
    Czy takie coś zadziała?
    Przedział migawki jaki chce osiągnąć to powiedzmy 1-50Hz
  • REKLAMA
  • #2 9598500
    piotrek700
    Poziom 13  
    Attiny2313 ma możliwość sprzętowej generacji PWM a jeżeli nie chcesz używać sprzętowej generacji to pozostaje ci przerwanie od timera i zmiana stanu wyjść w odpowiednich cyklach. Generacja PWM w pętli głównej to nie jest dobre rozwiązanie bo wypełnienie będzie ci pływać w zależności od tego co będzie robił program zaszyty w pamięci uP.
  • #3 9599091
    piotrva
    VIP Zasłużony dla elektroda
    Ja bym to zrobił tak, jasność regulujesz sprzętowym PWM'em, natomiast za pomocą drugiego timera + programu generujesz częstotliwość, i później robisz to na zasadzie wpisania do rejestru OCRnx (PWMnx) wartości zadanej (przechowywanej w dodatkowej zmiennej) i 0, które spowoduje wyłączenie światła. Sam kiedyś coś podobnego robiłem właśnie z takim regulowaniem częstotliwości i PWM'a, ale projekt dawno już przeszedł do historii, a kody się ulotniły ;-)
REKLAMA