Hallo, sagt mal, wenn durch einen Timeroverflow das interrupt flag bit (z.B. TMR3IF) gesetzt wird, wird es dann auch mal zurückgesetzt oder muss ich das selbst machen? Danke für etwaige Hilfe!
Hallo,
mußt du selbst löschen. Hier ein Beispiel:
/** V E C T O R R E M A P P I N G
*******************************************/
#pragma code
extern void _startup (void); // See c018i.c in your C18 compiler
dir
#pragma code _RESET_INTERRUPT_VECTOR = 0x000800
void _reset (void)
{
_asm goto _startup _endasm
}
#pragma code
#pragma code _HIGH_INTERRUPT_VECTOR = 0x000808
void _high_ISR (void)
{
_asm goto high_isr _endasm
}
#pragma code _LOW_INTERRUPT_VECTOR = 0x000818
void _low_ISR (void)
{
_asm goto low_isr _endasm
}
#pragma code
/** D E C L A R A T I O N S
**************************************************/
/***********************************************************************
*******
* Function: void high_isr(void)
************************************************************************
*****/
#pragma interrupt high_isr
void high_isr(void)
{
if (INTCONbits.TMR0IE)
{
if (INTCONbits.TMR0IF)
{
TMR0H=0x48;
TMR0L=0xE4;
INTCONbits.TMR0IF=0;
}
}
}
/***********************************************************************
*******
* Function: void low_isr(void)
************************************************************************
*****/
#pragma interruptlow low_isr
void low_isr(void)
{
}
#pragma code
Gruß Sascha
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.