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

atmega8 - Jak opóźnić wyłączanie przekaźnika o 5 sekund w Bascom?

mavi 02 Cze 2014 20:56 1584 7
REKLAMA
  • #1 13658479
    mavi
    Poziom 19  
    Posty: 493
    Ocena: 41
    Pewnie mi się dostanie ale nie mogę sobie dać rady z komendą w Bascomie, która po pojawieniu się sygnału z czujnika na wejściu procesora, spowoduje włączenie przekaźnika przez kolejne 5 sekund, a następnie go wyłączy. Zakładam, że to musi byc opcja Timer1 ale stworzenie działającej komendy mnie przerasta.

    Poniżej namiastka programu, który włącza przekaźnik jak czujnik działa i wyłącza jak czujnik przestaje działać. Czy ktoś może dać przykład jak ten program musi być zmodyfikowany by przekaźnik wyłączał się po upływie 5 sekund?

    $regfile = "m8def.dat"
    $crystal = 8000000
    Config Pinc.0 = Input
    Config Pinb.0 = Output
    Czujnik Alias Pinc.0
    Przekaźnik Alias Portb.0
    Set Portb.0
    Set Portc.0
    Do
    If Czujnik = 1 Then Set Przekaźnik
    If Czujnik = 0 Then Reset Przekaźnik
    Loop
    End
  • REKLAMA
  • #2 13658550
    mi14chal
    Poziom 28  
    Posty: 1021
    Pomógł: 112
    Ocena: 23
    A to w bascomie nie ma jakieś funkcji delay?
  • REKLAMA
  • #3 13658772
    mavi
    Poziom 19  
    Posty: 493
    Ocena: 41
    z tego co wiem to delay to komenda to odliczania czasu w mikrosekundach, a do dokładnego odliczania czasu należy używać funkcji Timer.
  • REKLAMA
  • #5 13659148
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • #6 13689333
    mavi
    Poziom 19  
    Posty: 493
    Ocena: 41
    widzę, że temat przygasł wiec ponownie prośbę...
    proszę o wrzucenie przykładowego programu na procesor atmega, gdzie po naciśnięciu przycisku dioda zapala się na 5 sekund i gaśnie.
    Liczę ze taki program pomoże mi zrozumieć zasadę działania komendy odliczajacej czas. Książka ani inne posty jakoś mi nie pomagają i nie mogę tego przeskoczyć. Liczę, że od strony praktycznej pojme o co chodzi...
  • #7 13700027
    Konto nie istnieje
    Poziom 1  
  • #8 13701562
    mavi
    Poziom 19  
    Posty: 493
    Ocena: 41
    po co ta uszczypliwość ....

    tak czy siak dziękuje za pomoc.
    Postaram się to zaadoptować.

Podsumowanie tematu

✨ Użytkownik poszukiwał pomocy w programowaniu mikrokontrolera ATmega8 w języku Bascom, aby opóźnić wyłączenie przekaźnika o 5 sekund po sygnale z czujnika. W odpowiedziach podkreślono, że do precyzyjnego odliczania czasu należy używać Timer1, a nie funkcji delay. Zaproponowano przykłady kodu, w tym konfigurację Timer1 w trybie CTC oraz użycie przerwań do monitorowania stanu czujnika. Użytkownik wyraził potrzebę praktycznego przykładu, aby lepiej zrozumieć działanie odliczania czasu.
Wygenerowane przez model językowy.
REKLAMA