INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
wieder mal: Problem mit arrays als Fkt.-Parameter
12.05.2015, 19:03 (Dieser Beitrag wurde zuletzt bearbeitet: 12.05.2015 19:08 von HaWe.)
Beitrag #1
wieder mal: Problem mit arrays als Fkt.-Parameter
hallo,
ich habe wieder mal ein Problem mit arrays als Fkt.-Parameter.
Um Funktionen flexibler zu nutzen möchte ich statt
Code:
void SetNetDefaultPatterns(){
  if (NumPattern<NMAXPAT) {
    NumPattern++;
    Input[2][1] = 0;
    Input[2][2] = 0;
    Input[2][3] = 0;
    Input[2][4] = 0;
    Input[2][5] = 0;
    Input[2][6] = 0;
    Target[2][1] = 0; Target[1][2] = 0; Target[1][3] = 0; Target[1][4] = 0; Target[1][5] = 0; Target[1][6] = 0;
  }
}

schreiben:
Code:
void SetNetPattern(int16_t  patt,  float * ibuf, float * obuf){
   int16_t i, o;
  
   if (NumPattern < NMAXPAT) {
      NumPattern++;  
      for(i=1; i<=NMAXIN;  ++i) { Input[patt][i]  = ibuf[i]; }
      for(o=1; o<=NMAXOUT; ++o) { Target[patt][o] = obuf[o]; }
   }
}


//================================================================================​=====
void SetNetDefaultPatterns(){
    float ibuf[NMAXIN+1], obuf[NMAXOUT+1];
  
    ibuf[1]=0; ibuf[2]=0; ibuf[3]=0; ibuf[4]=0; ibuf[5]=0; ibuf[6]=0;  
    obuf[1]=0; obuf[2]=0; obuf[3]=0; obuf[4]=0; obuf[5]=0; obuf[6]=0;
    SetNetPattern(2, ibuf, obuf);
}

Im 1. Fall erkennt er später das Muster wieder, im 2. Fall nicht - offenbar werden also die Arrays nicht korrekt übergeben. Aber warum nur... Huh
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.05.2015, 19:10
Beitrag #2
RE: wieder mal: Problem mit arrays als Fkt.-Parameter
Hi,
bei der Version ohne Funktion füllst Du Target[2][1] und dann Target[1][n] für n > 1. In der Version mit Funktion füllst Du immer Target[2][n].
Vielleicht deshalb?
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.05.2015, 19:23 (Dieser Beitrag wurde zuletzt bearbeitet: 12.05.2015 19:38 von HaWe.)
Beitrag #3
RE: wieder mal: Problem mit arrays als Fkt.-Parameter
stimmt, das war mal wieder ein wirklich dämliches Index-Durcheinander.

also nochmal probiert:

das funktioniert:
Code:
void SetNetDefaultPatterns(){
  
    if (NumPattern<NMAXPAT) {
    NumPattern++;
    Input[2][1] = 0;
    Input[2][2] = 0;
    Input[2][3] = 0;
    Input[2][4] = 0;
    Input[2][5] = 0;
    Input[2][6] = 0;
    Target[2][1] = 0; Target[2][2] = 0; Target[2][3] = 0; Target[2][4] = 0; Target[2][5] = 0; Target[2][6] = 0;
    }
}


das aber leider immer noch nicht....:
Code:
void SetNetPattern(int16_t  patt,  float * ibuf,  float *obuf){
   int16_t i, o;
  
   if (NumPattern < NMAXPAT) {
      NumPattern++;  
      for(i=1; i<=NMAXIN;  ++i) { Input[patt][i]  = ibuf[i]; }
      for(o=1; o<=NMAXOUT; ++o) { Target[patt][o] = obuf[o]; }
   }
}


//================================================================================​=====
void SetNetDefaultPatterns(){
    float ibuf[NMAXIN+1], obuf[NMAXOUT+1];
  
    ibuf[1]=0; ibuf[2]=0; ibuf[3]=0; ibuf[4]=0; ibuf[5]=0; ibuf[6]=0;  
    obuf[1]=0; obuf[2]=0; obuf[3]=0; obuf[4]=0; obuf[5]=0; obuf[6]=0;
    SetNetPattern(2, ibuf, obuf);
}

Irgendwo ist also immer noch der Wurm drin... Dodgy
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.05.2015, 19:29
Beitrag #4
RE: wieder mal: Problem mit arrays als Fkt.-Parameter
Mach doch mal Serial.print von den Inhalten von Target[2].

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.05.2015, 19:35 (Dieser Beitrag wurde zuletzt bearbeitet: 12.05.2015 19:45 von HaWe.)
Beitrag #5
RE: wieder mal: Problem mit arrays als Fkt.-Parameter
ist gerade passiert:
sehr aufschlussreich...

da muss ich wohl die Sache nochmal grundsätzlich überdenken... wobei ich noch absolut nicht weiß, was da schiefläuft Undecided

Code:
SetNetPattern 2
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
2.22
0.00
2.22
nan
0.00
2.22
0.00
2.22
0.00
0.00
0.00
ovf
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
-0.00
167063.52
0.00
0.00
nan
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
ovf
ovf
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
nan
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
2.22
Ende SetNetPattern

jetzt geht's:

Code:
void SetNetDefaultPatterns(){
    float ibuf[NMAXIN+1], obuf[NMAXOUT+1];
  
    memset( ibuf, 0, sizeof(ibuf) );
    memset( obuf, 0, sizeof(obuf) );

    ibuf[1]=0; ibuf[2]=0; ibuf[3]=0; ibuf[4]=0; ibuf[5]=0; ibuf[6]=0;  
    obuf[1]=0; obuf[2]=0; obuf[3]=0; obuf[4]=0; obuf[5]=0; obuf[6]=0;
    SetNetPattern(2, ibuf, obuf);
}

Rolleyes

danke fürs mitmachen ! Wink
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.05.2015, 20:07
Beitrag #6
RE: wieder mal: Problem mit arrays als Fkt.-Parameter
Hi,
also irgendwie habe ich den Eindruck, Du gibst da was anderes aus als das, was ich im Coding sehe. Mir ist überhaupt nicht klar, warum es jetzt klappt.
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.05.2015, 20:13 (Dieser Beitrag wurde zuletzt bearbeitet: 12.05.2015 20:14 von HaWe.)
Beitrag #7
RE: wieder mal: Problem mit arrays als Fkt.-Parameter
das serial print war so:

Code:
void SetNetPattern(int16_t  patt,  float * ibuf,  float *obuf){
   int16_t i, o;
  
   if (NumPattern < NMAXPAT) {
      NumPattern++;  
      for(i=1; i<=NMAXIN;  ++i) { Input[patt][i]  = ibuf[i]; Serial.println( Input[patt][i] ) ; }
      for(o=1; o<=NMAXOUT; ++o) { Target[patt][o] = obuf[o]; Serial.println( Target[patt][o] ) ; }
   }
}

aber warum man erstmal memset-ten musste, verstehe ich auch nicht so recht Wink
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.05.2015, 20:16
Beitrag #8
RE: wieder mal: Problem mit arrays als Fkt.-Parameter
Hi,
kannst Du mal einen Sketch machen, der nur diesen Teil macht? Ich vermute mal, dass da noch was außenherum ist, was falsch läuft.
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Problem mit SD Card Library BennIY 4 188 06.10.2016 18:38
Letzter Beitrag: Bitklopfer
  Problem mit SD.remove Eichner 6 211 22.08.2016 19:42
Letzter Beitrag: Eichner
  4x16 Tastermatrix Problem Michel 16 842 14.07.2016 10:02
Letzter Beitrag: StephanBuerger
  Problem mit Delay und Millis funnyzocker 1 457 26.06.2016 09:54
Letzter Beitrag: hotsystems
  Problem mit ESP8266 und EMail senden torsten_156 1 596 13.06.2016 21:14
Letzter Beitrag: torsten_156
  ESP8266_01 flashen - Problem torsten_156 12 1.043 30.05.2016 20:12
Letzter Beitrag: torsten_156
  Hardwareserial/Softserial: Problem mit Superklasse tuxedo0801 10 478 19.05.2016 12:25
Letzter Beitrag: amithlon
  wie Parameter der seriellen Schnittstelle anpassen? avoid 6 479 29.04.2016 16:44
Letzter Beitrag: avoid
  ESP8266 HTML Problem arduino_weatherstation 1 493 25.04.2016 21:52
Letzter Beitrag: rkuehle
  Problem mit OLED 0.96" Display torsten_156 3 536 03.04.2016 15:10
Letzter Beitrag: hotsystems

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste