ADC funktioniert nach Bootloader Rücksprung nicht mehr

Gast #3068961
Lesenswert?
• ▲
▼
Hallo Spezialisten,

ich habe folgenden "Effekt" den ich mir nicht erklären kann:

In einem ATmega168A habe ich eine Application laufen, die unter anderem 
den ADC verwendet. Funktioniert alles bestens. Zusätzlich habe ich mir 
einen Bootloader geschrieben (über die UART). Dieser funktioniert auch 
einwandfrei und ich kann Hexfiles in den AVR programmieren. Rücksprung 
in die Application geht auch problemlos und die Application startet dann 
auch wie gewollt.

Ich muss nur leider immer wieder feststellen, dass der ADC nach dem 
Rücksprung in die Application nicht mehr funktioniert. Erst nach einem 
Power-On-Reset funktioniert er wieder. Das Programm an sich ist also in 
Ordnung und wurde offenbar korrekt geflasht, nur hakt es nach dem 
Rücksprung und ich kann nichts aus den ADC-Registern lesen. Alle anderen 
Peripherien kann ich hingegen problemlos wieder nutzen nach dem 
Rücksprung, also Timer, UART etc...  Der ADC wird im Bootloader übrigens 
nicht benutzt, also auch nichts an dessen Registern gemacht. An den 
Interruptvektoren liegt es auch nicht, der ADC wird ohne Interrupt 
verwendet bei mir.

Hat jemand eine Idee was das sein könnte? Ich bin hier wirklich ratlos 
und habe auch keine Idee wie ich das "debuggen" könnte...

Vielen Dank für alle Tips!

Nils
#3068990
Lesenswert?
• ▲
▼
Ich wuerde auf einen Fehler in Zeile 42 tippen...

Es gibt 2 Unterschiede. Der erste ist der Bootloader Code, der andere 
ist die Anfangsort, wo der Usercode anfaengt.

Ich wuerde nach dem Bootloaden des Programmes den Beginn des Bootloader 
mit einem Jump auf den Beginn des Userprogrammes ueberschreiben und dann 
vergleichen.

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.