Veraltete avr-lib in AVR-Studio 6.2. verwenden?

Gast #5223123
Lesenswert?
• ▲
▼
Hallo zusammen,

ich habe das Problem, dass ich ein AVR-Studio 6.2 Projekt nach einer 
Neuinstallation v des AVR-Studio nicht mehr kompiliert bekomme.

Es liegt wohl an der Verwendung einer veralteten avr-lib  bei der 
UART-Bibliothek vom Peter Fleury. Hier ist eine Lösung beschreiben, aber 
der UART sendet leider dennoch nicht:
Beitrag "Fleury UART Lib AVR Studio 6.1"

Ich bekomme es leider, nach stundenlangen Versuchen, leider nicht 
weiter, deshalb die Frage, ob es eine Möglichkeit gibt, dennoch mit der 
veralteten avr-lib weiterzuarbeiten, d.h. das Projekt zu kompilieren und 
damit weiterzuarbeiten?

Es hat definitiv auch schon mal mit AVR Studio 6.2. funktioniert, ich 
weiß aber leider nicht mehr, was ich damals gemacht habe, um es dort zum 
Laufen zu bringen.

Danke schon im Vorraus,

Michael
Gast #5223163
Lesenswert?
• ▲
▼
Die konkrete Fehlermeldung lautet:
"attempt to use poisoned "SIG_OVERFLOW0"

Diese Funktion steht bei mir in der main uns beinhaltet folgendes:

SIGNAL (SIG_OVERFLOW0)      // every 4ms at 16MHz
{
  static char ct0, ct1, rpt;
  char i;

  i = key_state ^ ~KEY_INPUT;    // key changed ?
  ct0 = ~(ct0 & i);      // reset or count ct0
  ct1 = ct0 ^ (ct1 & i);    // reset or count ct1
  i &= ct0 & ct1;      // count until roll over ?
  key_state ^= i;      // then toggle debounced state
  key_press |= key_state & i;    // 0->1: key press detect

  if( (key_state & REPEAT_MASK) == 0 )  // check repeat function
     rpt = REPEAT_START;    // start delay
  if( --rpt == 0 ){
    rpt = REPEAT_NEXT;      // repeat delay
    key_rpt |= key_state & REPEAT_MASK;
  }
}
Gast #5223176
Lesenswert?
• ▲
▼
Klammere ich diese SIGNAL-Funktion erstaml aus, kommen dann noch die 
Fehlermeldungen, wie es in den erwähnten Thread auch war:
Beitrag "Fleury UART Lib AVR Studio 6.1"

Error:
attempt to use poisoned "SIG_USART_RECV"
attempt to use poisoned "SIG_USART_DATA"

Warning:
'SIG_USART_RECV' appears to be a misspelled signal handler [enabled by
default]
'SIG_USART_DATA' appears to be a misspelled signal handler [enabled by
default]

Diese beiden Fehlermeldungen bekomm ich weg, auch die SIG_Overflow 
errors und Warnungen, aber der UART sendet trotzdem nichts ans 
Terminalprogramm.

Da ich hier nicht weiterkomme, und um zu vermeiden, den Laptop direkt 
aus den Fenster zu werfen, die Frage, ob man nicht trozdem irgendwie den 
alten Code so kompilieren kann, mit einer aktuellen AVR-Studio Version.
Gast #5223186
Lesenswert?
• ▲
▼
Ich will am alten Code am liebsten gar nichts verändern, und ich weiß 
ja, das der auch mit AVR-Studio 6.2. funktionieren kann.
Ich musste nur, um etwas anderes auszutesten, AVR-Studio 6.2 löschen, um 
das AVR-Studio 7 zu installieren. Danach habe ich das 6.2 wieder 
installiert, und seitdem kommen diese Fehlermeldungen.
Gast #5224523
Lesenswert?
• ▲
▼
Die Int_Vektoren heissen heute anders
*************************************
In der gewählten Toolchain finden sich in der Include_Datei des 
entsprechenden Microchip(Atmel)-uProzessors die entsprechenden Vektoren 
am Ende der Datei. Source entsprechend anpassen und neu compilieren.

Als Beispiel für ATmega644:
**************************

C:\Atmel_Toolchain\AVR8_GCC\avr-gcc-8.0_2017-07-19_mingw32\avr\include\a 
vr\iomxx4.h

Der entsprechende Abschnitt ist oben beigefügt.
Angehängte Dateien:

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.