Gast
#963954
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!
|
Anzeige
|
PIC18 Timer overflow PIR bits
Gast
#963954
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
Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|