Hallo zusammen und frohes neues Jahr!

Wer kann mir mal helfen?
Ich habe in meinem Programm zwei Interrupotrotinen.

In der einen wird bei einer Abfrage über einen RS485 Bus ein Interrupt ausgelöst der den Status meines Steuermoduls überträgt.
Gleichzeitig senden das Modul von sich aus bei bestimmten Schaltvorgängen etwas auf den Bus.
Dies hat bisher auch immer funktioniert.

Da in dem Modul aber Zeiten verwendet werden, habe ich einen Timer eingesetzt der ebenfalls Interrupts auslöst.

Irgentwie beeinflussen sich die beiden jetzt so, dass der 485 Interrupt weder bei einer Abfrage noch bei einem einfachen Sendevorgang etwas macht.

Woran liegt das?

Hier die relevanten Codeausschnitte:

Code:
On Timer0 Ontimer0                                          'Timer Interrupt
Config Timer0 = Timer , Prescale = 1024
Enable Timer0
Enable Interrupts



On Urxc Onrxd                                               'Interrupt RS485
Enable Urxc
Enable Interrupts


'---------- Programm --------

Prog_start:

Do

'....
'....


Loop

End



'---------- Interrupt RS485 --------

Onrxd:
   Disable Interrupts

   Incr N
   B(n) = Udr

   If N > 9 Then
    Preamble = B(1) : Sync = B(2) : Hdb2 = B(3)
    Hdb1 = B(4) : Dab1 = B(5)
    Sab1 = B(6)
    Db1 = B(7)
    Db2 = B(8)
    Crc2 = B(9)
    Crc1 = B(10)
    N = 0

    Gosub Pruefung
    Else


    End If
Return



'---------- Senden  --------

Uebertragung:

   Portb.5 = 1

   Disable Urxc
   Disable Interrupts


   Portd.2 = 1 : Waitms 20                                  'RS485 PIN auf Senden

   Print Chr(preamble_) ; Chr(sync_) ;
   Print Chr(hdb2_) ; Chr(hdb1_) ;
   Print Chr(dab1_) ; Chr(myadress);
   Print Chr(db1_) ; Chr(db2);
   Print Chr(crc2) ; Chr(aktion) ;


   Do
   Loop Until Ucsra.txc = 1
   Reset Ucsra.txc

   Waitms 10 : Portd.2 = 0                                  'RS485 PIN auf Enpfang

   Enable Urxc
   Enable Interrupts


   Aktion = ""

   Sz = 0
   Portb.5 = 0
   N = 0


  Goto Prog_start

End


'---------- Timer -----------

Ontimer0:

Rtime = Rtime + 1                                           ' variable wird bei jedem Interrupt um 1 erhöht

Gosub Minutenzaehler

Return




'---------- Minutenzähler -----------

Minutenzaehler:


If Rtime = 1700 Then                                        ' Teilungsfaktor bei  7372800 Hz und Prescale um auf 1 Minute zu kommen

Minute = Minute + 1

Rtime = 0

Else
End If

Return