www.mikrocontroller.net

Forum: Compiler & IDEs Interrupt Vector für Input Capture Unit bei Tiny261?


Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht 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).

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
in der Doku hab ich nichts gefunden, aber ich glaub es müsste 
SIG_INPUT_CAPTURE0 sein

Gruss Patrick

Autor: Jörg X. (Gast)
Datum:

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

hth. Jörg

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht 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...

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist zwar kein Doxygen-Kommentar, aber...
                <VECTOR17>
                        <PROGRAM_ADDRESS>$010</PROGRAM_ADDRESS>
                        <SOURCE>TIMER0_CAPT</SOURCE>
                        <DEFINITION>ADC Conversion Complete</DEFINITION>
                </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.

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht 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...
>
                 <VECTOR17>
                         <PROGRAM_ADDRESS>$010</PROGRAM_ADDRESS>
                         <SOURCE>TIMER0_CAPT</SOURCE>
                         <DEFINITION>ADC Conversion Complete</DEFINITION>
                 </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

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Gruss Patrick

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht 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

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.