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][AtMega] Jak napisać program

michm4 13 Sie 2011 14:04 2381 5
REKLAMA
  • #1 9821056
    michm4
    Poziom 12  
    Witam
    Jak napisać program taki że mam 2 przyciski i jak nacisnę pierwszy przycisk X razy i potem nacisnę drugi to wtedy dioda zapali mi się na X sekund i zgaśnie.

    Próbowałem coś takiego ale nie działa
    
    $regfile = "m8def.dat"
    $crystal = 1000000
    
    Config Portd.1 = Input
    Portd.1 = 1
    Wejscie Alias Pind.1
    
    Config Portd.3 = Input
    Portd.3 = 1
    Ok Alias Pind.3
    
    Config Portb.0 = Output
    Led Alias Portb.0
    
    
    Do
    
    Dim X As Byte
    
    If Wejscie = 0 Then
    X = X + 1
    End If
    
    If Ok = 0 Then
    
    Led = 1
    Wait X
    Led = 0
    
    Else
    Led = 0
    End If
    
    Loop
  • REKLAMA
  • #2 9821340
    Kuniarz
    Moderator Projektowanie
    Algorytm :

    - czekaj na przycisk A
    - jeśli A wciśnięty to czekaj aż nie zostanie puszczony
    - zwiększ zmienną zliczającą wciśnięcia
    - jeśli zmienna zliczająca wciśnięcia > ileśtam (jakaś górna granica) to zrób cośtam ;-)
    - czekaj na przycisk B
    - jeśli B wciśnięty, to czekaj aż nie zostanie puszczony
    - pętla for x = 0 to zmienna zliczająca wciśnięcia
    - zapal diodę, poczekaj, zgaś diodę, poczekaj
    - next x
    - wyzeruj zmienną zliczającą wciśnięcia
    - wróć do pętli głównej
    Pomogłem? Kup mi kawę.
  • REKLAMA
  • #3 9821380
    michm4
    Poziom 12  
    tyle to i ja wiem tylko nie wiem jak to napisać w bascomie
  • REKLAMA
  • Pomocny post
    #4 9821464
    snnaap
    Poziom 25  
    A Twój program nie chce działać? Jaki jest problem.

    To co w programie masz nieprawidłowo to odczyt stanu przycisku.

    Procedura odczytu przycisku powinna przewidywać takie sytuacje jak drgania styków lub przypadkowe zakłócenia na linii przycisku.

    Jedną z możliwość odczytu przycisku jest:

    Kod: text
    Zaloguj się, aby zobaczyć kod


    W bascom występuje również gotowa funkcja DEBOUNCE - polecam się z nią zapoznać.
  • REKLAMA
  • #5 9821494
    michm4
    Poziom 12  
    dzięki właśnie o to mi chodziło
  • #6 9821671
    Kuniarz
    Moderator Projektowanie
    michm4 napisał:
    tyle to i ja wiem tylko nie wiem jak to napisać w bascomie


    ...dlatego nie napisałem Ci gotowca, bo to Cię NIC nie nauczy ;-) powodzenia !
    Pomogłem? Kup mi kawę.
REKLAMA