Werbung
Hallo
Für dynamische Webseiten braucht man wirklich nicht viel:
(Aus https://www.roboternetz.de/community...l=1#post485027)Code:out.print("<html><head><title>Robotersteuerung mit J2ME-Handy</title>"); out.print("</head><body>"); out.print("Kommando: "); out.print(Kommando); log(Kommando); out.print(" <table><tr><td><a href=1>Test1</a></td>"); out.print("<td><a href=2>Test2</a></td>"); out.print("<td><a href=3>Test3</a></td></tr>"); out.print("<tr><td><a href=4>Test4</a></td>"); out.print("<td><a href=5>Test5</a></td>"); out.print("<td><a href=6>Test6</a></td></tr>"); out.print("<tr><td><a href=7>Test7</a></td>"); out.print("<td><a href=8>Test8</a></td>"); out.print("<td><a href=9>Test9</a></td></tr>"); out.print("<tr><td></td><td><a href=0>Test0</a></td><td></td>"); out.print("</tr></table> "); //out.print(erste_line); out.print(""); out.print(""); out.print(""); out.print(""); out.print("</body></html>"); out.close(); in.close(); sc.close(); //playFromResource("/"+Kommando+".wav"); if(Kommando.equals("1")) playFromResource("/servo-4ms-r.wav"); if(Kommando.equals("2")) playFromResource("/servo-4ms.wav"); if(Kommando.equals("3")) playFromResource("/servo-4ms-l.wav"); //if(Kommando.equals("4")) playFromResource("/4.wav"); //if(Kommando.equals("5")) playFromResource("/5.wav"); //if(Kommando.equals("6")) playFromResource("/6.wav"); //if(Kommando.equals("7")) playFromResource("/7.wav"); if(Kommando.equals("8")) playFromResource("/servo-10ms.wav"); //if(Kommando.equals("9")) playFromResource("/9.wav"); if(Kommando.equals("0")) playFromResource("/1ms_lang.wav"); } }
Das "Server-Script" (in Java, da kenne ich mich quasi gar nicht aus) sendet eine Tabelle mit Links deren Ziel-URL aus einer Ziffer besteht. Wenn man im Browser dann einen dieser Links anklickt sendet dieser unter anderem die Ziffer zum Server zurück. Dieser filtert dann aus dem Datenstrom die Ziel-URL und daraus wiederrum die Ziffer. Das sollte ein AVR auch können.
Nettes Platinchen, damit liebäugle ich auch schon lange.
Gruß
mic
![]()
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Hallo,
was mic beschreibt ist das Verwenden der GET Methode. Die ist etwas einfacher als die POST Methode und hat den Vorteil, dass das Ganze für den Endanwender leichter zu durchschauen ist. Noraussichtlich werd ich das auch so machen.
Bevor man nun die GET- oder die POST- Variablen auswerten kann, muss man Zugang haben zum HTTP Request und der kommt hier nicht so komfortabel in einem Socket Stream daher, sondern ist Nutzlast in einem Paket, dass der ENC28j60 empfangen hat.
Um da jetzt tiefer einsteigen zu können, hab ich mir den Webserver auf dem mega32 so erweitert, dass ich den Browser zum Debuggen verwenden kann. Da wird es schon etwas lustiger.
![]()
So wird der Zustand der LED angezeigt, die LED kann umgeschaltet werden und die Debuginfo wird ausgegeben.
Um mit der Sprache C etwas vertrauter zu werden, hab ich mi das c Tutorial von www.tutorials.at und die code::blocks IDE mit C Compiler herunter geladen. Beides hat mir gut weiter geholfen.
Der Getstring ist jetzt zugänglich. Das war das letzte und schwierigste Puzzleteil, das mir gefehlt hat.
![]()
Jetzt kann programmiert werden.
Jetzt ist der Webserver mit dynamischer Webseite auf meinem NETIO.
![]()
Die Anzeige, der Linktext und der Urlstring richten sich nach dem Status der LED.
Hier jetzt weiter zu arbeiten ist schon recht komfortabel, wie man sieht:
Mal sehen, was als nächstes kommt: grafische Webseiten oder ein kleines IO-Board auf Punktrasterplatine. Vielleicht auch ganz etwas anderes.Code:if (!strcmp(UrlString,"L0")){LedOff();} else if (!strcmp(UrlString,"L1")){LedOn() ;}
Lesezeichen