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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren