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

[Atmega8][BASCOM]Generator impulsów

Maciek4141 18 Wrz 2008 21:24 6067 6
  • #1 5548376
    Maciek4141
    Poziom 22  
    Witam.
    Drodzy forumowicze bardzo proszę Was o pomoc. Otóż pisze program dla swojej nieukończonej jeszcze ruchomej głowy. Potrzebuję zrealizować coś takiego aby nie zależnie od głównej pętli programu (tzn. wpisuję tylko wartość) na jednym z pinów (obojętnie którym, resztę dostosuję do tego) generowany był sygnał od 1Hz do 8Hz. Zaznaczam ze chodzi mi o to, żeby w tym samym czasie, kiedy generowane są impulsy "działała" główna pętla programu.

    W jaki sposób zrealizować to w bascomie i czy jest to w ogóle możliwe?


    Pozdrawiam i z góry dziękuję za odpowiedź!
  • #2 5548474
    grzegrzol
    Poziom 19  
    
    Config Portb = 63 : Portb = 63
    Config Timer0 = Timer , Prescale = 1
    Enable Interrupts : Enable Timer0 : On Timer0 Time
    Do
    Loop
    End
    
    Time:
    Timer0 = Zmienna
    Toggle Portb.3
    Return


    Zmieniając wartość zmiennej "Zmienna" zmieniać będzie się częstotliwość impulsów.
  • #3 5550401
    Maciek4141
    Poziom 22  
    DZIĘKI WIELKIE
    Jeżeli dobrze rozumiem to ustalam początkową wartość licznika i kiedy licznik się przepełni zostaje przerwana główna pętla i skok do podprogramu. W jaki sposób wyliczyć jaką musi mieć wartość zmienna aby występowało na wyjściu 8Hz?
    Czy są może jakiej jeszcze rozwiązania, bo jak zauważyłem to skok do podprogramu będzie wykonywani 8 razy na sekundę. Nie będzie to przeszkadzać głównej pętli?

    Pozdrawiam
  • #4 5550893
    grzegrzol
    Poziom 19  
    A jaki kwarc, rezonator stosujesz?
  • #5 5551750
    Maciek4141
    Poziom 22  
    No mam zakupiony kwarc 8mhz.
  • #6 5563283
    Fyszo
    Poziom 37  
    Jeśli główny 'wątek' programu nie używa przerwań ani sztywnych regulacji czasowych to powinno to zadziałać.
  • #7 5563588
    Maciek4141
    Poziom 22  
    Dzięki wielki. Będę próbował, jeśli będą jakieś problemy to trudno (niestety taki bascom). Jeżeli się nie uda z przerwaniem timera to spróbuję z NE555.
    Tutaj mam 2 wyjścia albo ON/OFF i cały czas taka sama częstotliwość, albo spróbuję z PWM od mikrokontrolera, który będzie regulował pracę NE555 (mówię tutaj o podłączeniu tylko części z rezystorami i kondensatorem, a nie całego układu). Może ktoś próbował tego??


    Pozdrawiam
REKLAMA