Hallo Leute, ich hab mal so ein paar grundsätzliche Fragen. Ich habe bei meiner Diplomarbeit die Aufgabe diverse, bzw. erst mal eins, Mikrocontrollermodule mit einem PC über Ethernet kommunizieren zu lassen. Soweit so gut. Es handelt sich dabei um einen ARM-Kern(LPC2378). Der PC und das Modul sollen, um eine einfache Kommunikation zu gewährleisten mit Hilfe von Webservices über Soap kommunizieren. Dadurch ist gleichzeitig später auch eine dezentrale Steuerung des/der Moduls/Module möglich. Ich hoffe, das sich jemand hier evtl. mit Webservices auskennt. Ich habe mich im Netz informiert und bis jetzt heraus gefunden, das irgendwie immer Webserver benötigt werden. Was ich nicht ganz verstanden hab ist ob beide Seiten einen Webserver zur Verfügung stellen müssen, wenn die Kommunikation bidirektional laufen soll. Theoretisch könnte man doch auch über ein Polling den TCP-Kanal abfragen. So, da geht es schon weiter der Controller hat ein eingebautes Ethernetinterface, heißt das dann ich brauche keinen TCP-Stack mehr? Des Weiteren bräuchte ich noch nen Soap Parser, was wirklich brauchbares(schlankes) hab ich da bis jetzt auch noch nicht gefunden. Mit einem uLinux wäre das ganze wahrscheinlich einfacher zu handlen, da wär auch der Webserver nicht problematisch. Nun zur Kernfrage, kann man einen Webserver ohne Betriebssystem aufspielen? Ich meine nicht diese Derivate, wo letztendlich schon einer integriert ist. So, ich hoffe mal das war alles nicht zu verwirrend, n paar Sachen verstehe ich selbst noch nicht so ganz, deswegen sieht das so nach Brainstorm aus ;-). Ich danke euch schon mal für eure Antworten, bis dann.
> heißt das dann ich brauche keinen TCP-Stack mehr? Nein, der LPC2378 bietet keinen TCP-Stack in der Hardware. Der Ethernetcontroller ist integriert, Treiber dafür muss man bereitstellen (inkl. PHY-Ansteuerung) und darauf setzt dann ein TPC/IP Stack auf. >Nun zur Kernfrage, kann man einen Webserver ohne Betriebssystem aufspielen? Ja, Beispiele fuer einen einfachen http-Server ohne "Betriebsystem" sollten in uIP vorhanden sein. Man muss dann halt regelmäßig auf neue Päckchen prüfen. Bei Keil gibt es ein "Web-Server" Beispiel für deren MCB2300-Board (für Realview Toolchain), habe mir das selbst noch nicht richtig angeschaut und bin nicht sicher, ob Keil deren RTOS dafür nutzt, aber einen Blick ist es sicher wert. Weiterhin gibt es von Olimex auf Anfrage Beispielcodes für deren LPC2378-Board inkl. "Web-Server" ohne (RT)OS (für IAR EWARM, nicht GNU). Von NXP gibt es kostenlos eine spezielle LPC23xx/24xx-Version eines kommerziellen Stacks. Noch nicht angeschaut aber ein http-Server Beispiel dürfte auch dabei sein. Bei allen genannten: Lizenzen beachten, sind sehr unterschiedlich. Portierung auf GNU arm-elf/arm-eabi Toolchain sollte nicht allzu kompliziert sein. Mit SOAP auf Microcontrollern habe ich mit bisher nicht beschäftigt aber ein XML-Parser für wenig RAM dürfte zu finden sein. Martin Thomas (Thread wäre im uC/Elektronik-Forum besser aufgehoben)
Hi Martin, danke erst mal für die schnelle und hilfreiche Antwort. Ich dachte im uc&Elektronikforum gehts eher um Hardware, naja, ist halt n gemischtes Problem, kann ja evtl ein Mod verschieben... Das mit den Treibern schockt mich ehrlich gesagt ein bischen, ich hatte vermutet, gehofft, dass ich mir Treiberprogrammierung ersparen kann... Naja, wir werden sehen, vielleicht hat sich ja schon mal jemand darüber Gedanken gemacht. Zumindest hab ich wieder ein paar neue Suchstichworte ;-). Falls jemd. noch etwas einfällt immer raus damit. MfG, Hendi P.S.: Ich glaub ich meld mich mal an, das war bestimmt nicht die letzte Frage
Willkommen in der Welt der Mikrocontroller ;-) Ich denke in Software ist das ganze flexibler. Jeder hat ja andere Anforderungen. Und in Hardware wäre auch Entwicklungsaufwand und Chipfläche notwendig gewesen, was die Controller ein wenig teurer gemacht hätte. Und wenn man manchmal die Errataliste sieht, kann man sich freuen, dass man da in Software arbeitet (man bekommt es wahrscheinlich nicht besser hin, aber Änderungen können einfacher und kostengünstiger Implementiert werden). Das mit den Treibern ist aber auch nicht so schwer, es gibt ja wie bereits erwähnt freie Stacks, die wohl recht gut sind. Du kannst das Ganze dann ja um die Webservices erweitern. Da freuen sich bestimmt auch andere. Ich denke, man kann damit die Integration von Netzwerksensoren in "normale" Webanwendungen erleichtern (Teperatur des Webservers, der Küche, des Kellers,... zu Hause auf dem eigenen Server in Webseiten einbauen) --> Webprogrammierer müssen sich dann nicht mehr um die embeddedwelt kümmern (oder RS232, USB-Treiber,...). Just my opinion.
Danke für die Begrüßung :-). Ich bin nicht ganz neu, hab schon mit PIC zu tun gehabt, aber da hab ich mir wohl grad mal die Grundlagen erarbeitet, jetzt wirds etwas lustiger.... Ja, mit der Flexibilität hast du schon recht, hab auch festgestellt, das die Bsp. bei Keil schon ziemlich gut sind, darauf kann man aufbauen. Wenn es soweit ist kann ich ja dann die Peripherie mal hier beschreiben, so dass andere auch was davon haben, hätte mich ja schließlich auch über ne fertige Lsg. gefreut ;-). So´ne richtige Webanwendung ist das nicht, im eigentlichen Sinne. Es soll so laufen, dass ein Leitrechner mehrere Module ansprechen kann und deren, recht atomare, Dienste für eine Produktionsstrecke nutzen kann. Also unterschiedliche Module mit spezifischen Aufgaben werden je nach Prozessanforderung hintereinander geschaltet (Stichwort: Service orientierte Architektur). Das könnte man auch anders implementieren, aber mit Hilfe von SOAP und den Webservices hat man einen offenen Standard, der leicht erweiterbar ist, was später von Vorteil sein könnte. Ich werd euch auf dem laufenden halten, bis dann, Hendi
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.