Forum: Mikrocontroller und Digitale Elektronik Frage zu STM8S-Discovery


von Tim (Gast)


Lesenswert?

Nabend,

im nachfolgenden Programm habe ich im Debugmodus einige Probleme.

Wenn ich im Watchfenster die Variablen var, adw, adwert, U_E beobachte 
werden diese teilweise nicht mit den startwerten initialisiert obwohl 
ich zum einen einen breakpoint auf die zeile mit X gekennzeichnet gelegt 
habe und auch mal mit rechtklick "run to cursor" probiert habe an die 
selbe stelle.

An der stelle düften sich die Werte ja noch garnicht geändert haben. 
adwert aber zum beispiel ist dort plötzlich 3 und nicht 0. Woran liegt 
das?

Wenn ich Zeile für Zeile durchgehe mit dem Debugger passiert in der 
Zeile in der steht adwert = 0; einfach garnichts. Der Wert bleibt bei 3.

Werden die beiden Zeilen mit Y gekennzeichnet Auskommentiert ist alles 
wie es sein soll. Aber die Zeilen befinden sich ja erst danach also 
dürften die doch keinen Einfluss haben.

Und so wie es hier steht macht das Programm wenig sinn ich weiß. Ich 
habe aber der einfachheit halber alles bis auf das hier auskommentiert.

void main(void){

  int var = 0, adw = 0, adwert = 0;
  double U_E = 1.0;

  while (1){

X    adw = adw +1;

Y    adwert = ADC_DRL;
Y    adwert |= ADC_DRH<<8;

  }
}

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.