In den vorangegangenen Versuchen haben wir uns viel mit dem Thema TCP und dem Zugriff auf Webserver beschäftigt. Heute soll das Modul erstmalig selbst als Webserver fungieren.

Hinter dem Türchen des 11. Tages befindet sich ein besonderes Kabel, das demnächst noch sehr nützlich sein wird. Ein spezieller Aufbau ist heute nicht nötig, da das Programm ähnlich wie das Serial Monitor Programm des ersten Tages funktioniert.

Das Programm: Day11_TCPServer

Ändern Sie wie bisher die WLAN-Daten und laden Sie das Programm auf Ihr Board. Dann starten Sie den Monitor. Es kann wieder ein paar Sekunden dauern, bis die Meldung erscheint, dass das Board verbunden ist. Wenn die Erfolgsmeldung erschienen ist und die IP des Moduls angezeigt wird, können Sie im Serial Monitor mit dem ersten Befehl beginnen:

AT+CIPMUX=1

Mit diesem Befehl lassen Sie mehrere Verbindungen mit dem Modul zu. So können mehrere Rechner auf den Webserver zugreifen. Mit dem nächsten Befehl starten Sie den Webserver:

AT+CIPSERVER=1,80

Der Parameter 1 bedeutet, dass der Server gestartet wird. Mit 0 beenden Sie einen Server wieder. Die Zahl 80 steht für den Port, unter dem der Server zu erreichen ist. Vom Browser gesendete HTTP-Anfragen werden generell über den Port 80 gesendet.

Sie können nun einen Browser Ihrer Wahl öffnen und in die Adressleiste die IP des Moduls eintippen und aufrufen. Im Browser erscheint zunächst eine Lademeldung, aber im Serial Monitor können Sie eine Veränderung beobachten. Sie sehen eine Request-Anfrage ähnlich der, die Sie schon manuell versendet haben.

Die Browser-Anfrage
Die Browser-Anfrage

Der Browser wartet nun also auf eine Antwort und zeigt solange ein Ladezeichen, bis die Verbindung wegen Timeout getrennt wird. Sie können dem Browser mit einer Variante eines bekannten Befehls eine Nachricht schicken:

AT+CIPSEND=0,7

Der Parameter 0 gibt hier den Client an, an den die Nachricht geschickt werden soll. Das ist nötig, weil mehrere Verbindungen erlaubt sind und deswegen auch mehrere Clients verbunden sein können. Der zweite Parameter, hier 7, gibt erneut die zu sendenden Zeichen an. Es erscheint > und Sie können ein einfaches

Hallo

eintippen und mit Enter senden. In Ihrem Browser wird sich zunächst einmal dennoch nichts ändern, denn Sie müssen die Verbindung erst schließen. Verwenden Sie dazu den Befehl

AT+CIPCLOSE=0

Nun können Sie im Browser ein Hallo sehen und damit haben Sie eine erste Webserver Anwendung realisiert.