Skocz do zawartości

[Bascom] Przerwania w jednym programie


Jan

Pomocna odpowiedź

Witam.

W celu nauki napisałem prosty program mający na celu zaświecanie i gaszenie diody LED za pomocą przerwań. Niestety program nie działa a kompilater zwraca błąd powtarzania przerwań (tak się domyślam).

Oto treść błędu:

Error : 249 Line : 42 ISR alredy defined [PRZERWANIE] in file: ścieżka do pliku

to samo linia nr 46

KOD:

'SPRAWDZANIE PRZERWANIA

$regfile = "m8def.dat"
$crystal = 8000000

Config Lcd = 20 * 4
        Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.4 , E = Potd.6 , Rs = Portd.7

 Config Timer1 = Timer , Prescale = 256 , Clear Timer = 1 , Compare A = Toggle , Compare B = Disconnect

Declare Sub Przerwanie

Dim Licz_1s As Word

Led Alias Portb.1

Ddrb = &B11111111
  Portb = &B00001110

Ddrc = &B1111111
  Portc = &B1000000

Ddrd = &B11111111
  'Portd=                                              'LCD
Enable Oc1a
Enable Interrupts

Cls
Locate 1 , 5
Lcd "Przerwania"
    Locate 3 , 1
    Lcd "********************"
Do
Ocr1a = 31249                                          'co 1000ms
     Reset Led
On Oc1a Przerwanie
        Set Led

Ocr1a = 31249
     Reset Led
On Oc1a Przerwanie  'Linia 42

Ocr1a = 31249
     Set Led
On Oc1a Przerwanie  'Linia 46

Ocr1a = 31249
       Reset Led
On Oc1a Przerwanie

       Set Led
  Loop
    End

Przerwanie:
Ocr1a = 31249
          Incr Licz_1s
          If Licz_1s = 10 Then
             Licz_1s = 0
               Toggle Portb.2
                End If

                 Return

Jak ominąć te błędy ? Sprawdzałem też bez powtarzania OCR1A.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.