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

[BASCOM] Niezależne pętle

marek19951 28 Sty 2010 14:02 1641 2
REKLAMA
  • #1 7605377
    marek19951
    Poziom 16  
    Witam,

    Jestem w trakcie pisania sterownika do pieca, chciałbym zrobić niezależne dwie funkcje programu:
    1. Włączanie/Wyłączanie podajnika na czas zależny od temperatury
    2. Załączanie przedmuchu

    Przedstawię część programu, który napisałem w sposób jaki ja bym to widział.
    Cytat:

    Przedmuch:
    Portd. 1 = 1
    Portb. 5 = 1
    Wait 10
    Portd. 1 = 0
    Portb. 5 = 0
    Return
    End

    Do

    If T < 85 Then
    Gosub Przedmuch
    Wait 10

    Elseif T > 85 Then
    Wait 60

    End If
    Loop
    End

    If T < 30 Then 'jeżeli temperatura jest mniejsza niż 30'C
    Portd.0 = 1 'włącz podajnik
    Portb.4 = 1
    Wait 20
    Portd.0 = 0 'wyłącz podajnik
    Portb.4 = 0
    Wait 40

    End If
    Loop
    End


    Oczywiście w programie jest więcej If jeśli chodzi o temperaturę, jest zdefiniowana zmienna T i odczyt temperatury. Chodzi mi tylko o poradę czy te dwie pętle będą działać niezależnie od siebie? Tzn. że przedmuch będzie się załączał co 10 sekund a w tym czasie będzie się załaczał i wyłączał podajnik na dany czas?

    Dopiero zaczynam przygodę z BASCOM'em, więc przepraszam za niewiedzę.
  • REKLAMA
  • Pomocny post
    #2 7605866
    M. S.
    Poziom 34  
    uC wykonuje instrukcję po instrukcji. Może w jednej pętli wykonywać różne rzeczy ale nie w tym samym czasie. Napisz program tak jak ma się wykonać po kolei. Twój zakończy się po pierwszym END licząc od góry. Program który napisałeś nie kompiluje się z powodu braku deklaracji zmiennych i niekompletnej pętli Do: Loop.


    P. S. Dwie niezależne pętle w tym samym czasie są w stanie wykonać tylko dwa niezależne uC.
  • #3 7605939
    marek19951
    Poziom 16  
    O taką odpowiedź, krótką zwięźle i na temat, mi chodziło, daje pomógł. Zamykam temat. Dzięki.
REKLAMA