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 - problem z odczytem stanu przycisku

chablak 12 Wrz 2010 00:13 1227 2
REKLAMA
  • #1 8501428
    chablak
    Poziom 11  
    Witam

    Chciałem pobawić się przyciskami i LCD 16 * 2 i mam problem napisałem program do obsługi 4 przycisków - po wciśnięciu jakiegokolwiek przycisku pojawia się napis na LCD, ale gdy wciskam przycisk nic się nie dzieje. sprawdzałem miernikiem czy po wciśnięciu przycisku spada napięcie do 0V i spada więc nie wiem co może byc przyczyną.

    
    $regfile = "m8def.dat"
    
    $crystal = 8000000
    
    Config Lcd = 16 * 2
    
    Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.6 , Db6 = Portd.7 , Db7 = Portd.4 , E = Portd.3 , Rs = Portd.2
    
    
    Config Portb.0 = Input
    Config Portb.1 = Input
    Config Portb.2 = Input
    Config Portb.3 = Input
    Config Portb.4 = Input
    Config Portb.5 = Input
    'Config Portd.0 = Output
    
    I0.0 Alias Portb.0
    I0.1 Alias Portb.1
    I0.2 Alias Portb.2
    I0.3 Alias Portb.3
    I0.4 Alias Portb.4
    I0.5 Alias Portb.5
    'Q0.0 Alias Portd.0
    
    Set I0.2
    Set I0.3
    Set I0.4
    Set I0.5
    
    Do
    
    If I0.2 = 0 Then
       Waitms 50
       If I0.2 = 0 Then
       Cls
       Lcd "wcisnieto I0.2"
       Waitms 500
       End If
    End If
    
    
    If I0.3 = 0 Then
       Waitms 50
       If I0.3 = 0 Then
       Cls
       Lcd "wcisnieto I0.3"
       Waitms 500
       End If
    End If
    
    
    If I0.4 = 0 Then
       Waitms 50
       If I0.4 = 0 Then
       Cls
       Lcd "wcisnieto I0.4"
       Waitms 500
       End If
    End If
    
    
    If I0.5 = 0 Then
       Waitms 50
       If I0.5 = 0 Then
       Cls
       Lcd "wcisnieto I0.5"
       Waitms 500
       End If
    End If
    
    
    
    Loop
    End
    


    oto schemat podłączenia przycisków do atmegi:

    Atmega8 - problem z odczytem stanu przycisku

    próbowałem z różnym opóźnieniem, które ma wyeliminować drgania styków i nic...
  • REKLAMA
  • Pomocny post
    #2 8501431
    tadzik85
    Poziom 38  
    do odczytu portów służą rejestry PIN
  • #3 8501439
    chablak
    Poziom 11  
    tadzik85 racja:) teraz wszystko działa jak trzeba wielkie dzięki
REKLAMA