avr-gcc unter linux Probleme mit ISR

Gast #365212
Lesenswert?
• ▲
▼
Hi @ all

ich versuche seit Tagen mit Hilfe des avr-gcc eine Kleine ISR für den
Timer zu Schreiben.Ziel ist es eine At90s2313 dazu zu bringen das er
auf Port B einfach bis zum Overflow die Bit hochzahlt.
Problem ist das es einfch nicht zu den Ersehnten Interrrupt kommt.
Den Code für des beispeil sende ich als Anhang.
Nach den Compiliern mit den aufruf

avr-gcc -mmcu=at90s2313 -o demo -demo.c

habe ich mir mal die mühe gemacht eine objdump mit den aufruf :

avr-objdump -S demo > demo.s
zu machen um mir das Assambly anzusehen und bin mir nicht sicher ob die
Werte für die Interrupt Vectoren stimmen, die dort eingetragen sind
jedenfalls funktioniert das ganze nicht was mache ich falsch

Angaben zu den benutzten Versionen :
binutils-2.16.1
gcc-core-3.4.6
avr-libx-1.4.4

zum laden
avrdude5-1.tar.gz

mfg Olvier

-- auszug demo.s  ---

00000000 <__vectors>:
   0:  0a c0         rjmp  .+20       ; 0x16 <__ctors_end>
   2:  22 c0         rjmp  .+68       ; 0x48 <__bad_interrupt>
   4:  21 c0         rjmp  .+66       ; 0x48 <__bad_interrupt>
   6:  20 c0         rjmp  .+64       ; 0x48 <__bad_interrupt>
   8:  1f c0         rjmp  .+62       ; 0x48 <__bad_interrupt>
   a:  37 c0         rjmp  .+110      ; 0x7a <__vector_5>
   c:  1d c0         rjmp  .+58       ; 0x48 <__bad_interrupt>
   e:  1c c0         rjmp  .+56       ; 0x48 <__bad_interrupt>
  10:  1b c0         rjmp  .+54       ; 0x48 <__bad_interrupt>
  12:  1a c0         rjmp  .+52       ; 0x48 <__bad_interrupt>
  14:  19 c0         rjmp  .+50       ; 0x48 <__bad_interrupt>
Angehängte Dateien:
Gast #365213
Lesenswert?
• ▲
▼
Hallo
Ein solches Problem hatte ich unter linux auch schon.
KOmischerweise hat es geklappt, als ich statt dem
"ISR(TIMER1_OVF1_vect)"  die ältere (und ja angeblich schon
veraltete)
SIGNAL(SIG_OVERFLOW0) benutzt habe.Anders hat es bei mir einfach nicht
geklappt.
Gast #365219
Lesenswert?
• ▲
▼
OK Danke an Alle,

Asche auf mein Haupt ich habe vergessen das Produkt des Avr-gcc
mit hilfe von

avr-objcopy -O binary -demo demo.bin

zu wandeln um es mit avrdude  den at90s2313 gerecht zu servieren !


trotzdem Danke an alle.

Oliver

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.