Attiny44 Problem mit Watch im Debugwiremodus

Gast #1806103
Lesenswert?
• ▲
▼
Hallo!

Ich nutze den CodeVisionAVR Compiler und debugge dann im neuesten AVR 
Studio. µC ist ein ATtiny44.
Beim Debuggen habe ich folgendes Problem (Code aufs wesentliche 
gekürzt):
1
eeprom unsigned char table[64] =
2
    { Wert0,....Wert63 }; //64 Werte zu Verarbeitung des ADC Wertes
3

4
unsigned char read_adc(void)
5
{
6
  [...] //AD-Wandlung
7

8
  adc  = ADCH;
9
  adc  = table[adc/4];
10
  
11
}

Die AD-Wandlung funktioniert super, der adc Wert wird in der Watch 
gescheit angezeigt. Steppe ich nun einen Schritt weiter wird adc aber 
immer zu 0xFF, ganz egal welcher Wert bei der AD-Wandlung herausgekommen 
ist.
Eigentlich müsste aber doch der Wert der an der Array-Stelle hinterlegt 
ist angezeigt werden.
Warum ist das so ? g
Könnte mir vorstellen, dass die EEPROM Tabelle nicht berücksichtigt 
wird?
Oder falsches Zusammenspiel von Codevision und AVR Studio 
(unwahrscheinlich).

Der Code funktioniert übrigens wenn Debugwire nicht aktiviert ist. 
Hardwarefehler schließe ich vorsichtig aus. Nach Masse ist kein 
Kondensator, nur ein 7kOhm Widerstand nach Vcc (ich weiss, sollten 10 
sein aber es tut..)

Vielen Dank für eure Mühen!
Gast #1806681
Lesenswert?
• ▲
▼
Wenn ich dass wichtig sehe, steht in der Variable adc immer der Wert von 
table[0]

Denn du machst nichts anderes, als die oberen 2 Bit's des ADC's 
auszulesen, diesen Wert drch 4 zu teilen und dann das Ergebnuis als 
Array-Position zu verwenden.

in ADCH können nur die Werte 0, 1, 2 oder 3 stehen.
Alle Werte ergeben durch 4 geteilt 0.
Ich glaube nicht, dass du dass so machen willst.
Gast #1807040
Lesenswert?
• ▲
▼
Das hat(te) historische Gründe. Ursprünglich wars der Tiny24 und da war 
Programmplatz knapp. Wollte das ganze nun eh anders machen, war aber 
über den "Fehler" verwundert.

Sollte noch jemand ne Idee haben ... Interesse habe ich immernoch!
Gast #1807080
Lesenswert?
• ▲
▼
Besten Dank!
Gab ne Funktion Up/Download Memory in der man das EEPROM beschreiben 
kann. Nun gehts. :)

Achja, Programmer ist der JTAGICE MKII Clon von Futureelectronics falls 
mal jemand das selbe Problem hat.

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.