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

[C] Przycisk i funkcja AVR

P-o-l 08 Paź 2009 18:34 1232 4
  • #1 7104826
    P-o-l
    Poziom 18  
    Witam,

    Jak w C(Attiny2313) zrobić coś takiego, że gdy nacisnę przycisk to program zacznie się wykonywać ale gdy nacisnę drugi raz ten sam przycisk zanim kod się wykona to program przerwie wykonywanie tego kodu i zacznie od początku(coś jak reset i funkcja w main)? Na wątkach wyglądało by to mniej więcej tak:
    int i = 0;
    Thread thr = new Thread(Funkcja);
    private viod Funkcja()
    {
        for(;;)
        {
    		i++;
    	}
    }
    
    private void Button_Click()
    {
    	if(thr.ThreadState == ThreadState.Running)
    	{
    		thr.Interrupt();
    	}else{
    	Thread thr = new Thread(Funkcja);
    	thr.Start()
    	}
    }


    Nie wiem czy to realne bo dopiero zaczynam z C. Jeżeli się nie da to zostaje mi reset ;)
  • #2 7105565
    Dr.Vee
    VIP Zasłużony dla elektroda
    Lepiej opisz co chcesz zrobić, a nie jak - może jest lepsze rozwiązanie, o którym nie pomyślałeś.

    Jeśli nie, to sprawdź setjmp()/longjmp() z biblioteki standardowej.

    Pozdrawiam,
    Dr.Vee

    PS. Przeniosłem do Mikrokontrolery AVR.
  • #3 7105879
    P-o-l
    Poziom 18  
    Chcę po włączeniu zasilania spowodować wykonanie kodu(który wykonuje się parenaście sekund) i w razie gdy nacisnę przycisk gdy kod się jeszcze wykonuje - następuje wykonywanie kodu od początku ;)
  • #5 7106451
    Myrek1
    Poziom 23  
    Można też dać przycisk na linie RESETU (niezależne od kompilatora ) :D
REKLAMA