Home > Technologie > Linkit One und RGB LEDs

Linkit One und RGB LEDs

0
Advertisement

Linkit One und RGB LEDs

Dieses ist mein erstes instructable und in diesem instructable werde ich Ihnen zeigen, wie man eine RGB-LED unter Verwendung eines Linkit eins drahtlos (WiFi) steuert.

Schritt 1: Liste der Teile

Linkit One und RGB LEDs

  • Linkit Eins
  • RGB-LEDs (gemeinsame Anode)
  • Brotscheibe
  • Drähte
  • PC

Schritt 2: RGB-LED

Linkit One und RGB LEDs

Ich habe eine RGB-LED in der gemeinsamen Kathodenkonfiguration verwendet, die Kathoden von Rot, Blau und Grün gehen zu Pin 1, Pin 2 und Pin 3.

Schritt 3: Mikro-USB

Linkit One und RGB LEDs

Als nächstes müssen Sie einen Micro USB zwischen dem Linkit One und Ihrem PC anschließen und die notwendigen Treiber von der Linkit One Website installieren.

Schritt 4: Code

Linkit One und RGB LEDs

Verwenden Sie die arduino IDE, um den Code auf die Platine hochzuladen, müssen Sie die IDE ändern, damit es die Linkit One-Karte unterstützt. Geben Sie auch Ihr Netzwerk-ssid und Ihr Passwort ein.

  </ P> <p> Ändern Sie das Makro WIFI_AP, WIFI_PASSWORD und WIFI_AUTH zu Ihren eigenen Routereinstellungen. </ P> <p> * / #include #include #include #include < / P> <p> #define WIFI_AP "ssid" #define WIFI_PASSWORD "password" #define WIFI_AUTH LWIFI_WPA // Wählen Sie aus LWIFI_OPEN, LWIFI_WPA oder LWIFI_WEP nach Ihrer WLAN-Konfiguration // Ich würde LWIFI_WPA zuerst ausprobieren // falls das fehlschlägt LWIFI_WEP // wenn LWIFI_OPEN ausfällt (und herauszufinden, warum Sie WiFi den Nachbarn geben!) </ P> <p> int serverPort = 80;  LWiFiServer Server (ServerPort);  Int LED = 13; </ p> <p> void setup () {pinMode (LED, AUSGANG);  LWiFi.begin ();  Serial.begin (115200);  // Wiederholen, bis eine Verbindung zu AP Serial.println hergestellt wurde ( "Verbinden mit AP");  Während (0 == LWiFi.connect (WIFI_AP, LWiFiLoginInfo (WIFI_AUTH, WIFI_PASSWORD))) {digitalWrite (LED, HIGH);  Verzögerung (100);  DigitalWrite (LED, LOW);  Verzögerung (100);  DigitalWrite (LED, HIGH);  Verzögerung (100);  DigitalWrite (LED, LOW);  Verzögerung (600); </ p> <p>} digitalWrite (LED, HIGH);  PrintWifiStatus ();  Serial.println ( "Start Server");  Server.begin ();  Serial.println ( "Server gestartet");  DigitalWrite (LED, LOW);  } </ P> <p> void loop () {// Setzen Sie hier Ihren Hauptcode, um es wiederholt auszuführen: String str = "";  String url = "";  Int i;  Verzögerung (500);  LoopCount ++;  LWiFiClient client = server.available ();  If (client) {Serial.println ( "neuer Client");  // eine http-Anforderung endet mit einer leeren Zeile boolean currentLineIsBlank = true;  While (client.connected ()) {if (client.available ()) {// Wir ignorieren die Client-Anforderung grundsätzlich, warten aber auf HTTP-Anforderung end char c = client.read ();  Serial.print (c);  Wenn (c! = '\ N') str + = c;  If (c == '\ n') {//Serial.println (str);  Wenn (str.startsWith ( "GET")) {url = str.substring (4, str.lastIndexOf ( ""));  Serial.print ( "URL:");  Serial.print (url);  Serial.println ( ":");  } Str = "";  } </ P> <p> wenn (c == '\ n' && currentLineIsBlank) {Serial.println ( "Antwort senden");  // senden Sie eine Standard-http-Antwort header client.println ( "HTTP / 1.1 200 OK");  Client.println ( "Content-Type: text / html");  Client.println ( "Verbindung: schließen");  // die Verbindung wird nach Abschluss der Antwort client.println () geschlossen;  If (url! = String ( "favicon.ico")) {client.println ( "");  Client.println ( "\ n \ n </ p> <p> \ n </ p> <p>");  IP-Adresse ip = LWiFi.localIP ();  Client.println ( "</ p>");  Client.println ( "Erzählen Sie Ihrem Gerät, was zu tun ist! <br> <br> Schalten Sie die LED ein.  // i = digitalRead (LED);  Url.toLowerCase ();  If (url == Zeichenfolge ( "/? Q = on")) {digitalWrite (LED, HIGH);  Client.println ( "LED auf dem Foto");  } Else if (url == Zeichenfolge ( "/? Q = off")) {digitalWrite (LED, LOW);  Client.println ( "LED ausgeschaltet");  } Else {client.println ( "Nichts machen");  } Client.println ( "</ p> <p> \ n </ p> <p>");  Client.println ();  Unterbrechung;  }} If (c == '\ n') {// Sie beginnen eine neue Zeile currentLineIsBlank = true;  } Else if (c! = '\ R') {// Sie haben ein Zeichen auf der aktuellen Zeile currentLineIsBlank = false;  }}} // Geben Sie dem Webbrowser Zeit, die Datenverzögerung zu empfangen (50); </ p> <p> // Schließen Sie die Verbindung: Serial.println ( "close connection");  Client.stop ();  Serial.println ( "client disconnected");  }} </ P> <p> void printWifiStatus () {// die SSID des angeschlossenen Netzwerks drucken: Serial.print ( "SSID:");  Serial.println (LWiFi.SSID ()); </ p> <p> Drucken Sie die IP-Adresse Ihres WiFi-Schilds aus: IP-Adresse ip = LWiFi.localIP ();  Serial.print ( "IP-Adresse:");  Serial.println (ip); </ p> <p> Serial.print ( "Subnetzmaske:");  Serial.println (LWiFi.netnetMask ()); </ p> <p> Serial.print ( "Gateway-IP:");  Serial.println (LWiFi.gatewayIP ()); </ p> <p> // die empfangene Signalstärke drucken: long rssi = LWiFi.RSSI ();  Serial.print ( "Signalstärke (RSSI):");  Serial.print (rssi);  Serial.println (dBm);  } </ P>

Schritt 5: Laufzeit

Öffnen Sie nun einen Webbrowser und stellen Sie eine Verbindung zur Linkit One IP-Adresse her, und Sie sollten die Steuerung der RGB-LED erhalten.

Related Reading