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

[Atmega8+Attiny2313][BASCOM]Zastąpienie przycisku uC

Wersik 26 Lip 2008 18:42 2702 10
  • #1 5380638
    Wersik
    Poziom 12  
    Witam. Mam urządzenie zbudowane na Attiny2313 które jest sterowane za pomocą przycisków, poniżej zdjęcie :
    [Atmega8+Attiny2313][BASCOM]Zastąpienie przycisku uC
    Chciałbym zamiast tych switch'y użyć Atmegi8 do sterowania urządzeniem, lecz nie wiem za bardzo jak podłączyć i skonfigurować porty. Punkt A (patrz zdjęcie) podłączyłem do PD.1 Atmegi. Jak widać, w urządzeniu przyciski są zwierane do masy więc porty atmegi powinny być ustawione jako wyjścia, dobrze rozumiem?

    Chciałbym żeby przycisk był przyciśnięty przez 2 sekundy, następnie 2 sekundy puszczony, więc piszę w programie:

    
    $regfile = "m8def.dat"
    $crystal = 16000000
    
    Config Portd = Output
    
    Do
    
    Set Portd.1
    Wait 2
    Reset Portd.1
    Wait 2
    
    Loop
    End
    

    Skompilowałem, wgrałem lecz nie działa, co może być nie tak?
  • #2 5380665
    Dr.Vee
    VIP Zasłużony dla elektroda
    Witam,

    Wciśnięcie przycisku zwiera pin procesora port do masy, więc symulowanie wciśnięcia powinno polegać na wysterowaniu tej linii stanem niskim - a Ty sterujesz wysokim.

    Poza tym może być wiele powodów dlaczego Ci nie działa :)

    Pozdrawiam,
    Dr.Vee
  • #3 5380671
    Wersik
    Poziom 12  
    Z tego co rozumiem polecenie Reset ustawia stan niski, a polecenie Set stan wysoki... tak mam w programie.
  • #5 5380729
    Wersik
    Poziom 12  
    Sorry, wkradł się błąd. oczywiście chodziło mi o portd.1 Co jeszcze mże być nie tak?
  • #6 5380760
    ZbeeGin
    Poziom 39  
    Jeśli to nowa ATMega8 ze sklepu to zmień częstotliwość taktowania na 1MHz. Tak jest ona taktowana domyślnie i podłączenie kwarcu 16MHz nic nie daje, układ działa z wewnętrznego generatora RC.
  • #7 5380767
    Wersik
    Poziom 12  
    Próbowałem z wew. oscylatorem, zewnętrznym kwarcem, zawsze to samo. Sprawdzałem na 2 różnych Atmegach.
  • #9 5380786
    Wersik
    Poziom 12  
    Tak :
    [Atmega8+Attiny2313][BASCOM]Zastąpienie przycisku uC
    [Atmega8+Attiny2313][BASCOM]Zastąpienie przycisku uC
  • #10 5380797
    ZbeeGin
    Poziom 39  
    Weź diodę LED. Anodę przez rezystor 680R podłącz do VCC, a katodę do PD1. Powinna mrugać z częstotliwością 0,25Hz.
  • #11 5380927
    Wersik
    Poziom 12  
    Miga. co jeszcze może być nie tak? :-/

    Update : Działa. Konieczne było połączenie mas dwóch układów.. Zamykam.
REKLAMA