Zitat Zitat von mat-sche
Hallo,

ich detektiere über int0 eine steigende Flanke und will dies Auswerten:
Code:
Int0_isr:
Portd.7 = 1
Disable Int0
Return
Nach einmaligem Sprung in die Interruptroutine soll der Interrupt ausgeschalten werden, das Funktioniert so weit.
In:
Code:
If Portd.7 = 1 Then Set Relon
If Pinc.2 = 0 And Portd.7 = 1 Then
 Portd.7 = 0
 Irq_z = 0                                                                      'Netzspannung wieder da?  Or Batmin = 0
 Enable Int0
 Reset Relon
End If
Da PortD.7 als Eingang konfiguriert ist, wird hiermit nur der PullUp eingeschaltet:
Portd.7 = 1
Willst du das wirklich?
In allen Abfragen musst du aber sicher den Port durch den Pin ersetzen, also so
If Pind.7 = 1 Then Set Relon

Gruß

Rolf

Edit: Ich sehe gerade, dass du D.7 als Ausgang konfiguriert hast. Das passt dann gar nicht zusammen. Das soll in den Abfragen dann doch bestimmt einer der Eingänge D.0, D.1 oder D.2 sein.