Linkit One und RGB LEDs

Linkit One und RGB-LEDs - Gunook

Dies ist meine erste Anweisung, und in dieser Anweisung werde ich Ihnen zeigen, wie Sie eine RGB-LED mit einem Linkit One Wireless (WiFi) steuern.

Zubehör:

Schritt 1: Liste der Teile

  • Linkit One
  • RGB-LEDs (gemeinsame Anode)
  • Brotbrett
  • Leitungen
  • PC

Schritt 2: RGB LED

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

Schritt 3: Micro USB

Als Nächstes müssen Sie einen Micro-USB-Anschluss zwischen dem Linkit One und Ihrem PC herstellen und die erforderlichen Treiber von der offiziellen Linkit One-Website installieren.

Schritt 4: Code

Verwenden Sie die Arduino-IDE, um den Code auf die Karte hochzuladen. Sie müssen die IDE ändern, damit sie die Linkit One-Karte unterstützt. Geben Sie auch Ihre Netzwerk-SSID und Ihr Kennwort ein.

/*
WiFi Web Server

Ändern Sie das Makro WIFI_AP, WIFI_PASSWORD und WIFI_AUTH in Ihre eigenen Router-Einstellungen.

* / #include #include #include #include

#define WIFI_AP "ssid" #define WIFI_PASSWORD "password" #define WIFI_AUTH LWIFI_WPA // wähle aus LWIFI_OPEN, LWIFI_WPA oder LWIFI_WEP entsprechend deiner WiFi-AP-Konfiguration LWIFI_OPEN (und finde heraus, warum du den Nachbarn WiFi gibst!)

int serverPort = 80; LWiFiServer Server (serverPort); int LED = 13;

void setup () {pinMode (LED, OUTPUT); LWiFi.begin (); Serial.begin (115200); // versuche es erneut, bis eine Verbindung zu AP Serial.println besteht ("Connecting to AP"); while (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);

} digitalWrite (LED, HIGH); printWifiStatus (); Serial.println ("Start Server"); server.begin (); Serial.println ("Server gestartet"); digitalWrite (LED, LOW); }

int loopCount = 0;

void loop () {// Gib deinen Hauptcode hier ein, damit er wiederholt ausgeführt wird: String str = ""; String url = ""; int i; Verzögerung (500); loopCount ++; LWiFiClient client = server.available (); if (client) {Serial.println ("neuer client"); // Eine http-Anfrage endet mit einer Leerzeile. boolean currentLineIsBlank = true; while (client.connected ()) {if (client.available ()) {// Wir ignorieren grundsätzlich die Client-Anfrage, warten aber auf das Ende der HTTP-Anfrage. char c = client.read (); Serial.print (c); if (c! = ' n') str + = c; if (c == ' n') {//Serial.println(str); if (str.startsWith ("GET")) {url = str.substring (4, str.lastIndexOf ("")); Serial.print ("URL:"); Serial.print (url); Serial.println (":"); } str = ""; }

if (c == ' n' && currentLineIsBlank) {Serial.println ("Antwort senden"); // Standard-HTTP-Antwortheader senden client.println ("HTTP / 1.1 200 OK"); client.println ("Content-Type: text / html"); client.println ("Connection: close"); // Die Verbindung wird nach Abschluss der Antwort geschlossen client.println (); if (url! = String ("favicon.ico")) {client.println (""); client.println (" n n

n

"); IPAddress ip = LWiFi.localIP (); client.println ("

"); client.println (" Sagen Sie Ihrem Gerät, was zu tun ist!

Schalten Sie die LED ein.
Schalten Sie die LED aus.

"); // i = digitalRead (LED); url.toLowerCase (); if (url == String (" /? q = on ")) {digitalWrite (LED, HIGH); client.println (" LED on
");} else if (url == String (" /? q = off ")) {digitalWrite (LED, LOW); client.println (" LED aus
");} else {client.println (" Nichts tun
");} client.println ("

n

"); client.println (); break;}} if (c == ' n') {// du beginnst eine neue Zeile currentLineIsBlank = true;} else if (c! = ' r') { // Sie haben ein Zeichen in der aktuellen Zeile erhalten. currentLineIsBlank = false;}}} // Geben Sie dem Webbrowser Zeit, um die Datenverzögerung zu empfangen (50).

// schließe die Verbindung: Serial.println ("close connection"); client.stop (); Serial.println ("Client getrennt"); }}

void printWifiStatus () {// drucke die SSID des Netzwerks, mit dem du verbunden bist: Serial.print ("SSID:"); Serial.println (LWiFi.SSID ());

// Gib die IP-Adresse deines WiFi-Shields aus: IPAddress ip = LWiFi.localIP (); Serial.print ("IP-Adresse:"); Serial.println (ip);

Serial.print ("subnet mask:"); Serial.println (LWiFi.subnetMask ());

Serial.print ("Gateway IP:"); Serial.println (LWiFi.gatewayIP ());

// empfangene Signalstärke ausgeben: long rssi = LWiFi.RSSI (); Serial.print ("Signalstärke (RSSI):"); Serial.print (rssi); Serial.println ("dBm"); }

Schritt 5: Laufzeit

Öffnen Sie nun einen Webbrowser und stellen Sie eine Verbindung mit der IP-Adresse von Linkit One her. Sie sollten nun Steuerelemente zum Steuern der RGB-LED erhalten.