Nochmals Vielen Dank Andreas !!
Hab es so umgeändert das ich die Ausgänge schalten kann! Das Funktioniert auch wunderbar! Ist es möglich auch ein Blinkmuster mit den verschiedenen Farben zu erstellen?? Hab was ausprobiert komm aber nicht mehr aus der Schleife! Die HTML Seite wird ständig geladen und denk mal deswegen kann ich danach auch keine weiteren Daten verarbeiten! Hier ist mal der Quelltext dazu ! Bestimmt ist das keine gute Lösung, aber als Anfänger war ich schon mal zufrieden damit 
Dann hab ich noch das Problem sobald ich noch mehr Buttons anlegen will das die HTML nicht mehr aufgebaut wird?? Wieso eigentlich hab, ca 20 kB für dieses Programm gerbraucht. ist das zu viel? Gruß Benni _
Hab nur den unteren Teil des Quelltextes dargestellt sont wäre das zu lange
#include <RedFly.h>
#include <RedFlyServer.h>
#include <RedFlyNBNS.h>
int ledPinR=9;
int ledPinG=10;
int ledPinB=11;
byte ip[] = { 192,168, 2, 30 }; //ip from shield (server)
byte netmask[] = { 255,255,255, 0 }; //netmask
//initialize the server library with the port
//you want to use (port 80 is default for HTTP)
RedFlyServer server(80);
//initialize the NBNS library with the device name (max. 16 characters)
RedFlyNBNS NBNS("REDFLY");
server.begin();
}
}
}
}
char* strrmvspace(char *dst, const char *src) //remove space at start and end of a string
{
uint16_t i;
if(src == 0)
{
dst = 0;
}
else
{
//at start
for(i=0; isspace(src); i++);
_ strcpy(dst, &src*);_
_ //at end*_
* i=strlen(dst)-1;*
_ for(i=strlen(dst)-1; isspace(dst*); i--)
{
dst = 0;
}
}
return dst;
}
uint16_t htou(const char *src) //hex to uint
{_
uint16_t value=0;
_ while(src)
{
if((src >= '0') && (src <= '9')) { value = (value16) + (src-'0'+ 0); }
else if((src >= 'A') && (src <= 'F')) { value = (value16) + (src-'A'+10); }
else if((src >= 'a') && (src <= 'f')) { value = (value16) + (src-'a'+10); }
else { break; }
src++;
}
* return value;
}
uint16_t url_decode(char *dst, const char *src, uint16_t len)
{_
uint16_t i;
_ char c, ptr, buf[10]={0,0,0,0,0,0,0,0,0,0};
ptr = dst; //save dst
* for(i=0; i<len;)
{
c = src++; i++;
if((c == 0) ||
* (c == '&') ||
(c == ' ') ||
(c == '\n') ||
(c == '\r'))
{
break;
}
else if(c == '%')
{
buf[0] = src++; i++;
buf[1] = src++; i++;
dst++ = (unsigned char)htou(buf);
}
else if(c == '+')
* {
dst++ = ' ';
}
* else*
* {
dst++ = c;
}
* }
dst = 0;
//remove space at start and end of string
* strrmvspace(ptr, ptr);
return i;
}
{
//send standard HTTP 200 header*
* server.print_P(PSTR("HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n"));*
* //send HTML*_
* server.println_P(PSTR("
<font color="#FF0000">L<font color="#00C000">E<font color="#0000FF">DController
\r\n"*
* "\r\n"*
* "
\n\r"*
* "<form method="get">\r\n" *
* "\r\n"*
* "*
*\r\n"*
* "*
*\r\n"*
* "*
*\r\n"*
* "*
*\r\n"*
* "*
*\r\n"*
* "*
*\r\n"*
* "*
*\r\n"*
* "
Farbe |
Schalter EIN |
Schalter AUS |
<font color="#FF0000">Rot |
<input type="submit"name="p1"value="An" |
<input type="submit"name="p2"value="Aus"> |
<font color="#00C000">Grün |
<input type="submit"name="p3"value="An" |
<input type="submit"name="p4"value="Aus"> |
<font color="#0000FF">Blau |
<input type="submit"name="p5"value="An" |
<input type="submit"name="p6"value="Aus"> |
<font color="#000000">Weiß |
<input type="submit"name="p7"value="An" |
<input type="submit"name="p8"value="Aus"> |
<font color="#FF00FF">Lila |
<input type="submit"name="p9"value="An" |
<input type="submit"name="p10"value="Aus"> |
<font color="#00CED1">Tkis |
<input type="submit"name="p11"value="An" |
<input type="submit"name="p12"value="Aus"> |
<font color="#FFFF00">Gelb |
<input type="submit"name="p13"value="An" |
<input type="submit"name="p14"value="Aus"> |
<font color="#000000">Blin>/td> |
")); *
* if(p1)*
* {*
* digitalWrite(ledPinR,HIGH);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,LOW);*
* }*
* if(p2)*
* {*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,LOW);*
* }*
* if(p3)*
* {*
* digitalWrite(ledPinG,HIGH);*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinB,LOW);*
* }*
* if(p4)*
* {*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,LOW);*
* }*
* if(p5)*
* {*
* digitalWrite(ledPinB,HIGH);*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinG,LOW);*
* }*
* if(p6)*
* {*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,LOW);*
* }*
* if(p7)*
* {*
* digitalWrite(ledPinR,HIGH);*
* digitalWrite(ledPinG,HIGH);*
* digitalWrite(ledPinB,HIGH);*
* }*
* if(p8)*
* {*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,LOW);*
* }*
* if(p9)*
* {*
* digitalWrite(ledPinR,HIGH);*
* digitalWrite(ledPinB,HIGH);*
* }*
* if(p10)*
* {*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,LOW);*
* }*
* if(p11)*
* {*
* digitalWrite(ledPinG,HIGH);*
* digitalWrite(ledPinB,HIGH);*
* }*
* if(p12)*
* {*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,LOW);*
* }*
* if(p13)*
* {*
* while(!p14)*
* {*
* digitalWrite(ledPinR,HIGH);*
* delay(1000);*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinG,HIGH);*
* delay(1000);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,HIGH);*
* delay(1000);*
* digitalWrite(ledPinB,LOW);*
* digitalWrite(ledPinB,HIGH);*
* delay(1000);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,HIGH);*
* digitalWrite(ledPinR,HIGH);*
* digitalWrite(ledPinG,HIGH);*
* delay(1000);*
* digitalWrite(ledPinB,LOW);*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,HIGH);*
* digitalWrite(ledPinR,HIGH);*
* delay(1000);*
* }*
* }*
* if(p14)*
* {*
* digitalWrite(ledPinR,LOW);*
* digitalWrite(ledPinG,LOW);*
* digitalWrite(ledPinB,LOW);*
* }*
}