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]Program do przekaźników Problem

Popak 23 Paź 2009 17:49 1236 3
REKLAMA
  • #1 7165805
    Popak
    Moderator na urlopie...
    Witam

    Mam problem z małym programem w bascom-ie, z którym nie mogę poradzić sobie.
    Program jest prosty ale ja jako początkujący nie mogę sobie poradzić z nim, i mam do was prośbę kto pomorze mi w napisaniu takiego programu.
    Program ma sterować dwoma przekaźnikami i ma działać następująco.
    Gdy na wejściu portu PB.0 pojawi się stan niski załącza się przekaźnik K1, a po upłynięciu ok 2-4 sekund załącza sie drugi przekaźnik K2. (oba naraz mają działać)
    Następnie gdy zniknie stan niski na porcie PB.0 przekaźnik K2 wyłącza się, a po upłynięciu 2-4 sekund włącza sie pierwszy przekaźnik K1.
    Mam nadzieję że wiecie o co mi chodzi ;)
    Jak będzie wyglądał program w bascom-ie?
    Poniżej schemat układu i mój programik który nie działa prawidłowo :|
    Bo na porcie Pb.4 jest cały czas stan wysoki i na ułamek sekundy znika. W efekcie przekaźnik klapie.
    Schemat Układu:
    [Bascom]Program do przekaźników Problem

    Kod programu:
    '$tiny
    $regfile = "attiny13.dat"                                   'plik z definicjami procesora attiny13
    $crystal = 1000000                                          'częstotliwość taktowania procka 1Mhz
                                                                
    Config Portb.0 = Input                                      'Wejście REM
    Config Portb.4 = Output                                     'Przekaźnik GŁOŚNIK
    Config Portb.3 = Output                                     'Przekaźnik REM
    
    Set Portb.0
    Reset Portb.3
    Reset Portb.4
    
    Dim Znacznik As Iram Byte
    Znacznik = 0
    
    Do
     If Pinb.0 = 0 Then
     If Znacznik <> 1 Then
      Set Portb.4
     Wait 2
      Set Portb.3
      Znacznik = 1
     End If
      Else
     If Znacznik <> 2 Then
      Reset Portb.3
     Wait 2
      Reset Portb.4
      Znacznik = 2
     End If
     End If
    
    Loop
    End
  • REKLAMA
  • Pomocny post
    #2 7165911
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • Pomocny post
    #3 7165946
    Oineh
    Poziom 20  
    Na moje oko wygląda to tak, że może zanika zasilanie daj jakiś elektrolit przed stabilizator z jakieś 200uF lub więcej. Program wygląda na działający. Może to co włączasz przekaźnikami na chwilę mocno obciąża zasilanie. Zamiast przekaźników podłącz diody i zobacz czy świecą tak jak powinny... Na symulatorze oba programy chodzą jak powinny sprawdziłem.
  • #4 7165947
    Popak
    Moderator na urlopie...
    Witam
    Dzięki za szybką odpowiedź ale Program nie działa.
    Jest to samo co w moim programie na porcie PB.4 jest stan wysoki i dodatkowo od czasu do czasu pojawi się stan wysoki na sekundę na porcie PB.3

    Oineh
    Bingo :D Masz rację dałem kondensator 220uF i wszystko działa tak jak trzeba. Muszę tylko po testować dłuższą chwile aby czasem sam się nie załączał przekaźnik.

    Jeszcze raz dzięki :D
    Pozdrawiam
REKLAMA