MSP430 trouble Reading Memory

OP #4326856
Lesenswert?

Hi, ich habe ein MSP430F6638 auf einem PZ100USb board mit einem SHT25 
über I²C verbunden und führe Messungen durch. Das funktioniert auch 
soweit alles Problemlos. Das Problem tauchert erst auf wenn ich beim 
Code Composer Studio(v5) im Debug Modus die Messungen in einem Graph 
ausgeben lasse. Nach einiger Zeit, manchmal nach 4 Messungen manchmal 
erst nach 1500 Messungen, kommt auf jeden Fall die Nachricht: " MSP430: 
Trouble Reading Memory Block at 0x457a (dort werden die Messungen in 
einem Array gespeichert) on Page 0 of Length 0x320. Could not read 
device memory"
Meine Frage wäre ob jemand schon mal so ein Problem hatte und ob jemand 
einen Lösungsansatz wüsste.

hier ist mal mein Code der Main(), auch wenn der Fehler nur auftaucht 
wenn ich die Werte in einem Graph ausgeben lasse.
1
void main (void) {
2
  WDTCTL = WDTPW + WDTHOLD;            // Stop watchdog timer to prevent timeout reset
3
  init();
4
  I2C_init(SHT25,SHT25_CLK);
5

6
  P1DIR |= 0x01;
7
  P6SEL |= 0x01;                            // Enable A/D channel A0
8
  ADC12CTL0 = ADC12ON+ADC12SHT0_8+ADC12MSC; // Turn on ADC12, set sampling time
9
                    // set multiple sample conversion
10
  ADC12CTL1 = ADC12SHP+ADC12CONSEQ_2;       // Use sampling timer, set mode
11
  ADC12IE = 0x01;                           // Enable ADC12IFG.0
12
  ADC12CTL0 |= ADC12ENC;                    // Enable conversions
13

14
  DAC12_0CTL0 = DAC12IR + DAC12SREF_1 + DAC12AMP_5 + DAC12CALON;
15
  DAC12_0CTL0 |= DAC12ENC;     // Enable DAC12
16

17
  while(1){
18
    time_1++;
19
    if(time_1>=100){
20
      ADC12CTL0 |= ADC12SC;
21
      DAC12_0DAT = ADC12MEM0;
22
      time_2++;
23
      if(time_2>=400){
24
        P1OUT^=0x01;
25
        SHT25_Measurement(1);
26
        SHT25_Measurement(0);
27
        P1OUT^=0x01;
28
        time_2=0;
29
      }
30
    time_1=0;
31
    }
32

33
  }
34
}
Gast #4326874
Lesenswert?

Also ich arbeite intensiv mit MSP430 und CCS von Version 4 bis jetzt 6.1 
und gelinde gesagt würde ich dem PRogramm eher wenig Langzeitstabilität 
zutrauen, gerade in so "live" Messungen wie du sie angezeigt haben 
willst.

Habe ich aber real auch noch nie versucht, aber den Fehler den du 
beschreibst mit trouble... und dann kann man nicht mehr debuggen hatte 
ich natürlich schon tausende male.


Bin grade zu faul deinen MSP nachzuschlagen, falls er USB onboard hat, 
was ich glaube kannst du "relativ" einfach :) eine CDC Schnittstelle 
programmieren ( COM Port) und dann die Daten an ein Terminalprogramm 
schicken wie HTerm, dann musst du nix mehr debuggen und der Code läuft 
einwandfrei.

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