Forum: Mikrocontroller und Digitale Elektronik Embedded (lwip) Webserver - Daten per Javascript plotten


von Ersi (cell85)


Lesenswert?

Hi,

ich hab auf Basis des lwip-stack einen webserver auf dem µC laufen.
Ich kann den Wert des AD Wandlers als Balken ausgeben.

Ich hab jetzt auch einen Graph auf Javascript Basis implementiert, der 
mir die aktuellen Werte in den Graph plottet.

Ich speichere die AD-Werte nun in einer Funktion auf dem µC in ein Array 
mit 100 Elementen. Ich möchte diese in einem extra Graph geplottet 
bekommen.

Nur wie kann mein Javascript Graph jetzt auf die Werte im Array 
zugreifen?

Bei dem aktuellen A/D Wandler Wert, übergebe ich ja nur die eine 
Variable.
Wie mach ich das dann bei einem Array? Das komplette Array übergeben?

Der Javascript Graph benötigt die Daten so:

series: [{
 name: 'MeineMessDaten',
 data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 
9.6]
            }, {
...


Ich hatte die Idee das mit einer Schleife zu übertragen, aber ich 
bekomme das Array nicht auf die Seite.
1
extern U16 AD_in (U32 ch);
2
3
    case 'g':
4
      /* AD Input - file 'ad.cgi' */
5
      switch (env[2]) {
6
        case '1':
7
          adv = AD_in (2);
8
          len = sprintf((char *)buf,(const char *)&env[4],adv);
9
          break;
10
        case '2':
11
          len = sprintf((char *)buf,(const char *)&env[4],(float)adv*3.3/1024);
12
          break;
13
        case '3':
14
          adv = (adv * 100) / 1024;
15
          len = sprintf((char *)buf,(const char *)&env[4],adv);
16
          break;
17
      }
18
      break;
19
20
    case 'x':
21
      /* AD Input - xml file 'ad.cgx' */
22
      adv = AD_in (2);
23
      len = sprintf((char *)buf,(const char *)&env[1],adv);
24
      break;
25
   }
26
  return ((U16)len);
27
}

Hat da jemand eine Idee?

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Sven S. schrieb:
> Nur wie kann mein Javascript Graph jetzt auf die Werte
> im Array zugreifen?
Entweder in die HTML Seite korrekt formatiert einbetten, oder 
(universeller) als extra "Seite" welche die Daten als JSON ausgibt und 
dann per AJAX abrufen.

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.