AVR Studio Debug: Springt nicht in Funktion

Gast #504758
Hi,

ich stehe vor einem seltsamen Problem und weiß nicht so recht weiter. 
Habe ein AVR Studio Projekt und dieses compiliert auch ohne eine 
Fehlermeldung durch. Auch das Flashen des Atmega1281 geht ohne Probleme. 
Allein beim Debuggen wird nicht in eine von mir implementierte Funktion 
gesprungen. Er übergeht die Funktionen einfach ohne irgendein Zeichen zu 
geben. Alle anderen Funktionen werden ohne Probleme aufgerufen. Hat hier 
irgendjemand schon mal ein ähnliches Problem gehabt?

Gruss,
Lars
Gast #504779
>compiliert auch ohne eine Fehlermeldung durch.
Bedeutet nur, dass du keinen Rechtschreibfehler gemacht hast.

>Auch das Flashen des Atmega1281 geht ohne Probleme.
Soll das  heissen, dass das Programm im Controller auch funktioniert, 
oder ist damit nur der Programmiervorgang gemeint?

>Er übergeht die Funktionen einfach ohne irgendein Zeichen zu geben.
Würde ich auch machen...

>Hat hier irgendjemand schon mal ein ähnliches Problem gehabt?
Ich zumindest nicht.

Poste den Code!
Gast #504795
#include "uart.h"

...
application_init();
uartInit();
uart_send( 0x31 );
uart_send( 0x31 );
uart_send( 0x31 );
...

application_init( void ){
....
}


uartInit und uart_send sind in einer externen Datei. Application_Init 
wird sauber aufgerufen, den Rest möchte er einfach nicht mehr ausführen.

> Soll das  heissen, dass das Programm im Controller auch funktioniert,
> oder ist damit nur der Programmiervorgang gemeint?
Damit ist der Programmiervorgang gemeint. Ich debugge auf der Hardware.

Gruss,
Lars
Gast #504798
Ah jetzt bekomme ich auch diese Fehlermeldung:

Debugger: 'Break at line my_uart.c:121' has been disabled. Unable to 
bind line 121 in file "my_uart.c" to a program memory address.


Kann damit jemand was anfangen?

Danke für eure Hilfe
Gast #943350
hallo,

ich habe das gleiche Problem und würde gerne wissen, ob jemand eine 
Lösung dazu hat.

Ich versuche mein ganz einfaches Programm mit Hilde des JTAGICEmkII zu 
debuggen.

int main (void)
{
  IO_init();

  while(1)
  {

    // Sendewert
    adcval = ADC_read();
    LED_task_tx(adcval);
  }
}

Die Funktion IO_init befindet sich in einer eigenen Datei und sie wird 
auch korrekt aufgerufen. Die Funktion wird abgearbeitet und danach kehrt 
das Programm zum Anfang der main-Funktion zurück, wo dann wieder IO_init 
aufgerufen wird.
Alle anderen Funktionen werden nicht beachtet.

Kann mir jemand helfen?

Viele Grüße
biggie

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.