Interrupt Vector für Input Capture Unit bei Tiny261?

Gast #697205
Lesenswert?

Moin,

ich bin gerade auf der Suche welcher Interruptvector bzw. welche 
Definition gilt. Dazu hab ich den neuen WinAVR installiert. Darin gibt 
es ein H File für den 261 welches das iotnx61.h mit einbindet. Leider 
finde ich nicht die Definition für den Interrupt der Input Capture Unit? 
Wie ist die Schreibweise in GCC?  ISR(TIMER0_CAPT_vect) ??

Gruss Patrick
#697224
Lesenswert?

Wenn Du den WINAVR installiert hast, warum schaust Du dann nicht einfach 
in die libc-Doku (die wird schließlich automatisch mitinstalliert). Da 
steht alles drin. Abgesehen davon entsprechen die Vektornamen i.d.R. den 
in der Interrupt-Tabelle im jeweiligen Datenblatt angegebenen (bis auf 
das angehängte "_vect" natürlich).
Gast #697271
Lesenswert?

Ein kurzes <Strg>+<F> in der iotnx61.h sagt, dass es tatsächlich 
"TIMER0_CAPT_vect" heißt, allerdings steht da wörtlich:
1
/* ADC Conversion Complete */
2
#define TIMER0_CAPT_vect    _VECTOR(16)"
:P

hth. Jörg
#697289
Lesenswert?

Patrick wrote:
> in der Doku hab ich nichts gefunden, aber ich glaub es müsste
> SIG_INPUT_CAPTURE0 sein
Die "SIG_IRGENDWAS"-Namen sind veraltet. Die gehörten ursprünglich zu 
den ISR-Vorgängern "SIGNAL". Wie ich oben geschrieben habe, einfach Name 
aus dem Datenblatt (mit Underscores statt Blanks) und "_vect" hinten 
dran.

@Jörg:
Schön, das ist natürlich ein dicker Hund. Allerdings halte ich die 
Vektornamen für weitgehend selbsterklärend, so dass es mit ein wenig 
Überlegung eine eindeutige Zuordnung geben sollte...

Allerdings ist natürlich problematisch, dass dank Doxygen der Fehler 
auch in der Dokumentation steckt und man sich auch in der Tabelle nen 
Wolf suchen kann. Fällt allerdings schon auf, dass da mitten zwsichen 
den ganzen Timer-Vektoren einsam und verlassen ein ADC-Vektor steht...
Moderator Persönliche Seite #697350
Lesenswert?

Das ist zwar kein Doxygen-Kommentar, aber...
1
                <VECTOR17>
2
                        <PROGRAM_ADDRESS>$010</PROGRAM_ADDRESS>
3
                        <SOURCE>TIMER0_CAPT</SOURCE>
4
                        <DEFINITION>ADC Conversion Complete</DEFINITION>
5
                </VECTOR17>

So steht's im partdescription-XML-File von Atmel. :-/  Da haben
wir es dann auch in der avr-libc geerbt, und von da ist es auch
in die Doku gewandert. :-/

Mach mal 'nen Bugreport bei Atmel auf dafür.
#697504
Lesenswert?

Jörg Wunsch wrote:
> Das ist zwar kein Doxygen-Kommentar, [...]
Ah so, ich hatte in die entsprechende .h-Datei gar nicht reingeschaut. 
Aber da sich die Tabelle in der Beschreibung der interrupt.h befindet, 
hätte ich da auch selbst drauf kommen können...

> [...] aber...
>
1
                 <VECTOR17>
2
                         <PROGRAM_ADDRESS>$010</PROGRAM_ADDRESS>
3
                         <SOURCE>TIMER0_CAPT</SOURCE>
4
                         <DEFINITION>ADC Conversion Complete</DEFINITION>
5
                 </VECTOR17>
>
> So steht's im partdescription-XML-File von Atmel. :-/  Da haben
> wir es dann auch in der avr-libc geerbt, und von da ist es auch
> in die Doku gewandert. :-/
Aha.

> Mach mal 'nen Bugreport bei Atmel auf dafür.
OK...

Gruß

Johannes
#700001
Lesenswert?

Patrick wrote:
> kann mal einer die aktuelle Version der iotnx61.h anhängen? Ich glaub da
> gibt's viele Versionen wo jeweils andere "falsche" Bezeichnungen
> enthalten sind.
Also bis auf den einen falschen Kommentar wüsste ich von keinem Fehler. 
Und das Problem ist doch jetzt hoffentlich endgültig geklärt, oder etwa 
nicht?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren