Moin Ich benutze Pollins AVR-NET-IO zusammen mit dem durch G.Menke angepassten Radig Webserver. Da ich nun auch analoge Werte erfasse möchte ich das diese auf der Webseite sich in einem gewissen Intervall automatisch aktualisieren. Z.Zt. geht es nur über ein manuelles Neuladen (F5) der Seite. Sicher ist die auch anders (dynamisch) möglich aber wie? Ich habe bei meiner bisherigen Suche nichts gefunden. Kann mir jemand weiter helfen? Thomas
einfach folgenden code in deinem html-teil einfügen. weisst den browser an, die seite nach der angegebenen zeit neu zu laden
1 | <meta http-equiv="refresh" content="10"> |
erzeugt aber auch jeweils den kompletten traffic im netzwerk!
oder Daten per Ajax abrufen. Also HTTP-Requestobjekt (in JavaScript) anlegen und Anfrage im Hintergrund an den Server (NetIO) senden. Der antwortet beispielsweise mit ner XML-Datei. die kannst Du un JavaScript parsen und die Werte auf der Seite darstellen. Einfach mal nach AJAX googeln. Aber aufpassen! Die zyklisch ausgetauschte datei darf nicht gecachet werden, sonst sinds immer die selben werte, die angezeigt werden! Kann man im HTTP-Header einstellen.
Christian L. schrieb: > einfach folgenden code in deinem html-teil einfügen. weisst den browser > an, die seite nach der angegebenen zeit neu zu laden >
1 | <meta http-equiv="refresh" content="10"> |
> erzeugt aber auch jeweils den kompletten traffic im netzwerk! Das regelmäßige Neuladen lassen war auch mein erster Gedanke. Aber das sieht ja nicht so wahnsinnig gut aus wenn die Seite ständig neu aufgebaut wird. Auch die Bedienbarkeit wird wohl leiden. Trotzdem Dank, denn dies könnte der erste schnelle Workaround sein bis ich folgendes geblickt habe... ;-) guest schrieb: > oder Daten per Ajax abrufen. Also HTTP-Requestobjekt (in JavaScript) > anlegen und Anfrage im Hintergrund an den Server (NetIO) senden. Der > antwortet beispielsweise mit ner XML-Datei. die kannst Du un JavaScript > parsen und die Werte auf der Seite darstellen. > > Einfach mal nach AJAX googeln. Aber aufpassen! Die zyklisch > ausgetauschte datei darf nicht gecachet werden, sonst sinds immer die > selben werte, die angezeigt werden! Kann man im HTTP-Header einstellen. Hui erschlägt mich erstmal. Hab zwar von allem schon mal etwas gehört aber noch mit fast nichts von dem gearbeitet ;-). Kann man dies denn im knappen uC Speicher unterbringen? Nun ich werd mich dann mal Ajax beschäftigen... Thomas
Die Ajax-Lösung erfordert keine FW-Änderung im uC, ausser dass Du Deine Messdaten im XML-Format bereitstellen musst. Nur die Webseite wird etwas umfangreicher, aber auch eher in der Dimension 1-2 Bildschirmseiten Text. Wenn in der HTML/JS-Datei alle überflüssigen Leerzeichen etc entfernt sind wird das auch nicht so groß. Das Grundprinzip ist dabei eigentlich, dass der Browser (hier liegt die Rechenpower..) zyklisch Daten vom Server anfordert und diese im Hintergrund nachlädt und dann visualisiert, OHNE die Seite neu laden zu müssen (Was bei nem AVR wahrscheinlich auch nicht im ms-Bereich liegt ;-))
kannst Du denn die Webseiten auf ner SD-Karte ablegen oder müssen die in Flash des AVR? hab mich mit dem Radig Server noch nicht so auseinandergesetzt
guest schrieb: > kannst Du denn die Webseiten auf ner SD-Karte ablegen oder müssen die in > Flash des AVR? hab mich mit dem Radig Server noch nicht so > auseinandergesetzt Das System ist so schon eine Zeit im Einsatz und sollte nun nur ergänzt werden. Leider ist kein SD-Karten Slot vorhanden und so liegen die Webseiten im Speicher des uC. Aber einen "größeren" ATmega kann ich noch einsetzen. Damit sollte der Speicherplatz dann ausreichen.
was auch noch ne idee wär, nur die werte auf eine eigene HTML Seite zu legen und die auf der eigentlichen Seite in einem iFrame darzustellen. Dann lädt mit der Th B. schrieb: > <meta http-equiv="refresh" content="10"> Lösung nur der iFrame neu und der Rest der Seite bleibt stehen. Ist zwar nicht so sauber, aber funktioniert...
Hallo, das Nachladen von Dateien (JavaScript) lässt sich auch allein mit JavaScript erledigen und reicht für diesen Anwendungsfall. Die HTML-Seite lädt dazu einfach eine (immer dieselbe) Scriptdatei nach, in der dann die zu aktualisierenden Daten stehen. anbei mal ein Bsp. wie ich es auf meinem AVR-Server in etwa verwende. Sascha
Hallo Sascha Sascha Weber schrieb: > Hallo, > > das Nachladen von Dateien (JavaScript) lässt sich auch allein mit > JavaScript erledigen und reicht für diesen Anwendungsfall. > > Die HTML-Seite lädt dazu einfach eine (immer dieselbe) Scriptdatei nach, > in der dann die zu aktualisierenden Daten stehen. > > anbei mal ein Bsp. wie ich es auf meinem AVR-Server in etwa verwende. > > Sascha Vielen Dank dafür! Ich denke ich habe das Beispiel im Wesentlichen verstanden. Aber wo bzw. wie muss ich denn die JavaScript Datei auf dem uC ablegen? Thomas
auf dem µC legst du eine xyz.js Datei an, die die von dir benötigten Werte vom Webserver Variablen zuweist. z.B.
1 | var analog1=%VA@01; |
2 | var eingangd7=%PIND7; |
diese Datei wird nun von der HTML-Seite aus geladen und enthält die vom µC ersetzten Werte. Sascha
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.