- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 10 von 182

Thema: Diskussion zum RP6 M256 WIFI Modul

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Max Web
    Gast
    Habe ich alles gemacht, der Fehler bleibt der Gleiche...

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von SlyD
    Registriert seit
    27.11.2003
    Ort
    Paderborn
    Alter
    40
    Beiträge
    1.516
    Editier mal in der RP6M256_WIFIlib.c die Zeile 341
    #define WIFI_DEBUG

    also Kommentarzeichen wegmachen. Dann den Simple Webserver nochmal neu übersetzen.
    Was wird im SERIELLEN Terminal ausgegeben?

    Aussehen sollte es so:
    Code:
    Got request: *CLOS**OPEN*GET / HTTP/1.1
    GOT GET!
    
    Close connection... 
    ### WIFI Enter CMD mode
    ENTER CMD GPIO14!
    
    W{?}
    ?
    [OK:?]
    RAW_CMD{close
    }
    close
    Write Commad done!
    
    ### WIFI Leave CMD mode
     W_CMD{exit ; EXIT}
    RAW_CMD{exit}
    exitWrite Commad done!
     [RESP_OK:EXIT]
    done!
    MfG,
    SlyD

  3. #3
    Max Web
    Gast
    Oh - ich glaube ich habe den Fehler gefunden: Der HTTP-Header, den ich benutzt habe, hat ein "Connection:close" nachgeschickt - vermutlich gab das Probleme mit dem manuellen Trennen der Verbindung im Programm...

  4. #4
    Erfahrener Benutzer Roboter Genie Avatar von SlyD
    Registriert seit
    27.11.2003
    Ort
    Paderborn
    Alter
    40
    Beiträge
    1.516
    Ja da die Kommandobefehle ja prüfen ob die Kommandos richtig übertragen werden kann sich das in die Quere kommen.
    Kommt da nicht das richtige zurück gibts Fehlermeldungen.

    Wie schon dabei steht, das ist der simpelst denkbare Webserver damit es ein schön übersichtliches Beispiel bleibt.
    Wenn man den ganzen Kram den ein normaler Webserver sonst noch so kann braucht, muss man schon etwas mehr Aufwand treiben.


    MfG,
    SlyD

  5. #5
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Das macht echt Spass mit dem Loader und seinen abgedockten Terminals zu spielen.

    Auf Basis des Webserverbeispiels eine LED-Ansteuerung mit dem Browser:

    Code:
    // LEDs mit dem Browser ansteuern                                                mic 22.7.2012
    
    #include "RP6M256Lib.h"
    
    char c, kommando=0;
    
    void send_html_page(void);
    
    int main(void)
    {
    	initRP6M256();
    	
    	writeString_P("\n\nsetLEDs() mit dem Browser                            22.7.2012 mic\n\r");
    
    	// Make sure WLAN Module Packet size / buffer size and flush timer is OK
    	enter_cmd_mode_WIFI();
    	issueCMD_WIFI("set comm size 1024","AOK");
    	issueCMD_WIFI("set comm time 10","AOK");
    	leave_cmd_mode_WIFI();
    	
    	while(true)
    	{
    		if(getBufferLength_WIFI()) // Daten vom Browser empfangen?
    		{
    			c=readChar_WIFI();
    			writeChar(c);  // ja, dann Daten zum seriellen Terminal senden
    			
    			if(c == '?') { kommando=1; setLEDs(0); } // und ab dem ? interpretieren
    
    			if(kommando) switch(c)
    				{
    					case 'a': setLED1(1); break;
    					case 'b': setLED2(1); break;
    					case 'c': setLED3(1); break;
    					case 'd': setLED4(1); break;
    				}
    
    			if(c == 13) // Datenende
    			{
    				if(kommando) kommando=0; else setLEDs(0); // LEDs aus, wenn kein ? gefunden
    				send_html_page();
    			}
    		}
    	}
    	return 0;
    }
    
    void send_html_page(void)
    {
    	// Send HTTP Header:
    	writeString_P_WIFI("HTTP/1.0 200 OK\r\n");
    	writeString_P_WIFI("Content-Type: text/html\r\n");
    	writeString_P_WIFI("\r\n");
    
    // Send HTML Content:
    writeString_P_WIFI("<html><head><title>RP6-WIFI: Leds ansteuern</title></head><body>\n");
    
    writeString_P_WIFI("setLeds():\n");
    writeString_P_WIFI("<form action=\"http://169.254.77.3:2000\" method=\"get\">\n");
    
    writeString_P_WIFI("<input type=\"radio\" name=\"SL4\" value=\"d\">&nbsp;\n");
    writeString_P_WIFI("<input type=\"radio\" name=\"SL3\" value=\"c\">&nbsp;\n");
    writeString_P_WIFI("<input type=\"radio\" name=\"SL2\" value=\"b\">&nbsp;\n");
    writeString_P_WIFI("<input type=\"radio\" name=\"SL1\" value=\"a\">\n");
    writeString_P_WIFI("<br>\n");
    
    writeString_P_WIFI("<input type=\"submit\" value=\"Setzen\">\n");
    writeString_P_WIFI("<input type=\"reset\" name=\"Name\" value=\"reset\">\n");
    writeString_P_WIFI("</form>\n");
    
    writeString_P_WIFI("</body>\n");
    writeString_P_WIFI("</html>\n");
    
    	// Wait a bit and then close connection:
    	mSleep(50);  // Depending on the content you may have to wait longer.
    
    	enter_cmd_mode_WIFI(); // ??? Wie funktioniert das?
    	writeCommand_WIFI("close\r");
    	leave_cmd_mode_WIFI();
    }
    Die URL im Form-Tag muss man natürlich anpassen.

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    29.08.2008
    Beiträge
    73
    Hey leute,

    ich werf mal so zwischen durch ein, dass ichs auch endlich am Laufen habe
    Die Einarbeitung ist doch etwas tricky, wenn man keinen RP6 hat, aber es ist eigentlich alles super erklärt nur schadet es nicht das RP6 Handbuch auch zu kennen.
    ich hatte zuerst auch Probleme mit der WLAN-Verbindung, aber es lag an meinem Router. Hab das Modul jetzt wo anders getestet, da geht es sofort ohne Probleme. Super Arbeit von Arrex. Jetzt auf ans weiter testen.

    Gruß
    Elchi

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.11.2010
    Beiträge
    773
    Jo, Ichthyosaurier nun auch endlich ein vernünftiges WLAN-Terminal in labview, welches ich nun gerade versuche, zu verwenden und einzubauen.
    Mal sehen...

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.11.2010
    Beiträge
    773
    Hi Radbruch,

    funzt dein Programm bei dir immer? Bei mir klappt es bis zur ersten Eingabe, ab der zweiten ist die Verbindung weg?!!?

    Grüße

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.11.2010
    Beiträge
    773
    Habe da einen kleinen Fehler im Beispiel 12 entdeckt:
    Wenn man cmd aktiviert hat, aber einen Bumper betätigt, wird zunächst kein Escape-Behave aktiviert. Dieser folgt dann aber prompt, wenn man den Command-Modus wieder deaktiviert...
    Ist glaube ich nicht so gewollt, oder?
    Grüße

Ähnliche Themen

  1. [ERLEDIGT] Kostenlose RP6 M256 WIFI Module für Testanwender!
    Von SlyD im Forum Robby RP6
    Antworten: 10
    Letzter Beitrag: 02.07.2012, 15:24
  2. RP6v2 M256 WiFi !?
    Von Dirk im Forum Robby RP6
    Antworten: 20
    Letzter Beitrag: 11.05.2012, 19:27
  3. ARM für WiFi steuerung ?
    Von fat tony im Forum ARM - 32-bit-Mikrocontroller-Architektur
    Antworten: 5
    Letzter Beitrag: 03.01.2010, 13:57
  4. Wifi Roboter
    Von newName im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 4
    Letzter Beitrag: 16.01.2008, 13:51
  5. Formate zur Diskussion
    Von sonic im Forum Konstruktion/CAD/3D-Druck/Sketchup und Platinenlayout Eagle & Fritzing u.a.
    Antworten: 24
    Letzter Beitrag: 03.08.2004, 18:41

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress