Hallo, ich bin gerade auf der Suche nach einem AVR Ethernet-Modul. Es gab viele Suchergebnisse bei Google, von allen fand ich das Webserver-Modul von tuxgraphics.com (http://shop.tuxgraphics.org/electronic/detail_avrwebserver_smd4.html) und das Ethernut-Modul (http://www.ethernut.de/en/hardware/index.html) am besten. Warum ich hier poste? Ich moechte sicher gehen, dass diese Module auch wirklich zwei meiner wichtigsten "Anforderungen" erfuellen (soweit ich der Websites entnehmen konnte, tun sie das, aber bevor ich eines der Module bestelle, moechte ich es gerne noch mal von euch bestaetigen lassen): 1. Aufgrund von Zeitgruenden haette ich gerne ein Ready-to-Go-Modul. Das heisst, ich kann mit wenigen initialisierenden Handgriffen direkt mit dem Endziel fuer mein Projekt starten, naemlich diverse HTTP-Anfragen zu machen: Deswegen ist es fuer mich wichtig, dass auf den gelieferten Modulen schon HTTP und alles was dafuer benoetigt wird schon implementiert ist. Soweit ich es verstanden habe erfuellen die beiden Module diese Anforderung. Ist das korrekt? 2. Guter Support: Wie gaengig sind die beiden Module? Wenn ich ne Frage haben werde, werden sich mehr Leute mit tuxgraphics oder mit Ethernut auskennen und mir netterweise dazu Tipps geben? Ich glaube eher Ethernut, oder? Vielen Dank und einen frohen 2. Weihnachtsfeiertag! J!M!
Was sind für Dich genau die diversen HTTP-Anfragen? Sollen nur statische Webseiten geliefert werden oder auch SSI? Was ist mit der Formularauswertung? Was ist genau Dein Endziel? Sorry, meine Kristallkugel ist über Weihnachten beim Polieren.
Hallo! Naja, ich meine vor allem damit GET-Anfragen an einen Web-Server im Internet. SSI nicht, aber PHP durchaus... Macht das einen Unterschied zu rein statischen HTML-Seiten? Beste Gruesse, J!M!
PHP auf nem Microcontroller? Das kannst Du vergessen. PHP ist Speicher- und Ressourcenmäßig ein ziemlich dicker Brocken. Ich glaube noch nicht mal auf den OpenWRTs (und das ist immerhin nen MIPS mit 16 bis 32 MB RAM unter Linux) ist PHP mit dabei. Wenn Du PHP wirklich brauchst, schau Dich am besten nach nem Atom-PC um. Im AVR-Bereich wirst Du es nicht einfach haben eine Skriptsprache zu finden. Die Logik hinter der Webseite (also das, was Deine GET-Anfragen nach nach dynamischen Seiten entgegennimmt) sollte am besten in C gemacht sein. Evtl. kannst Du das mit Client-Seitiger Logik in Javascript kombinieren.
anonymous schrieb: > PHP auf nem Microcontroller? Das kannst Du vergessen. PHP ist Speicher- > und Ressourcenmäßig ein ziemlich dicker Brocken. Ich glaube noch nicht > mal auf den OpenWRTs (und das ist immerhin nen MIPS mit 16 bis 32 MB RAM > unter Linux) ist PHP mit dabei. So wie ich das verstehe, will er HTML Anfragen abschicken. Von daher macht es kein Unterschied ob der Server ein PHP Script ausführt oder nicht. Aber wo willst du die angefragte HTML Seite denn darstellen? Display? Oder willst du einfach nur Daten per HTTP PUT schicken?
>Ich glaube noch nicht >mal auf den OpenWRTs (und das ist immerhin nen MIPS mit 16 bis 32 MB RAM >unter Linux) ist PHP mit dabei. >Wenn Du PHP wirklich brauchst, schau Dich am besten nach nem Atom-PC um. Nee, das läuft unter anderen auch ohne Probleme auf dem NGW100, auch auf WRTs, hier z.b. http://www.macsat.com/OpenWRT/lighttpd.php
Hallo! Ja, es ist wie Simon sagt, dass ich nur HTTP-Seiten aufrufen möchte, und evtl. auch ein paar Daten an einen Web-Server schicken werde, aber nicht etwa einen Webserver auf dem Ethernet-Modul mit PHP und pipapo laufen lassen möchte. Die Darstellung erfolgt auf einem LC-Display, ja. Ich hoffe, dass ich mehr oder minder nachvollziehbar dargestellt habe, was ich gerne machen möchte. Erfüllt das Ethernut-Modul (Ethernut 1.3) diese Anforderung, ohne dass ich noch Vieles an Vorarbeit leisten muss? J!M!
anonymous schrieb: > PHP auf nem Microcontroller? Das kannst Du vergessen. PHP ist Speicher- > und Ressourcenmäßig ein ziemlich dicker Brocken. Ich glaube noch nicht > mal auf den OpenWRTs (und das ist immerhin nen MIPS mit 16 bis 32 MB RAM > unter Linux) ist PHP mit dabei. Doch, ist dabei und funktioniert auch einwandfrei. Diese Info ist aber hinfällig, da nur ein HTTP-Client benötigt wird, also lediglich eine TCP-Verbindung öffnen und Daten hin- und herschicken. Leider kenne ich o.g. Implementationen nicht, kann mir aber gut vorstellen, dass das geht. Es könnte aber sein, dass GET und RESPONSE jeweils in ein TCP-Packet passen müssen. Ich erinnere mich an einen Stack, der keine größeren Datenmengen übertragen konnte.
Okay, aber dieses Problem lässt sich umgehen ... Also, ich tendiere jetzt zu Ethernut statt tuxgraphics. Da ich mir auch ziemlich sicher bin mittlerweile, dass eben HTTP schon implementiert ist, bin ich auch kurz davor es mir zu bestellen. Nur eine Sache noch bezüglich evtl. Fragen in der Zukunft: Besitzt jemand schon ein Ethernut-Modul und hat Erfahrungen damit gemacht/kennt sich damit aus? J!M!
Dumme Frage: Wie drückt sich das Ethernut-Nodul (welches hast Du dir ausgewählt) in Euro aus?
Was willst du denn machen? Sollen die HTTP Daten auch geparst werden? So wie eine Art Browser? Das wirst du nämlich in keinem Projekt finden.
Ethernut 1.3. In Euro, so an die 140 €. Nö, parsen mach ich schon. Aber dass die gelieferte API mir schon Funktionen bietet wie Verbindung zum Server aufbauen, Anfrage senden, Antwort entgegennehmen etc.
Ach so. Ja das können eigentlich so gut wie alle. Zumindest eine Verbindung aufbauen. HTTP Unterstützung braucht man dafür ja eigentlich nicht. Einfach TCP Verbindung öffnen und die Headerdaten raushauen. Beim Empfangen dann auf die zwei \r\n warten, danach kommen die Nutzdaten. Ein großes Problem ist aber immer, dass (mangels Puffer) man keinen "Stream" an HTTP Daten hat, sondern die Daten immer paketweise verarbeitet werden müssen. Und da muss man beim parsen halt drauf achten, dass ein Tag auch über zwei Pakete sich erstrecken kann.
@Simon K. Nee, das ist nicht bei allen Projekten so das man keinen Stream hat. Ich selber habe bei meinem Projekt [1] alles komplett entkoppelt, so das man einen Byteweisen Stream bekommt. Das was auf der Netzwerkschicht passiert bekommt man nicht zu sehen, darum kümmert sich der Stack. Und nebenbei zerlegt er einem noch den GET-Request in seine Bestandteile und hat ein definiertes CGI-BIN Interface wo man alles vorgekaut bekommt und sich nur noch das raussuchen muss was man braucht. CA Dirk [1] http://wiki.neo-guerillaz.de
Mag schon sein. Gut, war arg verallgemeinert. Aber die gleiche Voraussetzung wie auf dem Rechner hat man einfach nicht, mangels Speicher.
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.