Hallo,
ich versuche gerade den PID -Regler von App Note avr221 in mein Projekt
hinein zu implementieren.
es hackt gerade bei mir an der stelle:
/*! \brief Timer interrupt to control the sampling interval
*/
#pragma vector = TIMER0_OVF_vect
__interrupt void TIMER0_OVF_ISR( void )
{
static uint16_t i = 0;
if(i < TIME_INTERVAL)
i++;
else{
gFlags.pidTimer = TRUE;
i = 0;
}
}
da zeigt AVRStudio folgende Fehlermeldungen:
../main.c:51: warning: ignoring #pragma vector
../main.c:52: error: expected constructor, destructor, or type
conversion before 'void'
kann mir vielleicht jemand, wie man so ein fehler beheben kann?
Danke schön in Voraus
MfG
Walid
#pragma vector = TIMER0_OVF_vect Sieht mir nach IAR-Embedded Workbench für AVR aus. Du nutzt doch sicher den AVR-GCC. Da werden die ISR anders deklariert. Gruß Skriptkiddy
Die #pragma/__interrupt Kombination ist für den IAR-Compiler (EWAVR/ICC). Für avr-gcc/avr-libc ist dies anzupassen, siehe http://www.nongnu.org/avr-libc/user-manual/group__avr__interrupts.html .
1 | |
2 | |
3 | |
4 | |
5 | |
Lektüre des AVR-GCC-Tutorials erscheint angeraten.
Hallo, Ich danke allen für die Hilfreichen Tipps, Es Funktioniert jetzt :) Mfg Walid
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.