Linkit One和RGB LED:5个步骤

Linkit One和RGB LED:5个步骤

目录:

Anonim

这是我的第一个指示,在这个教学中,我将向您展示如何使用Linkit One无线(WiFi)控制RGB LED。

供应:

第1步:零件清单

  • Linkit One
  • RGB LED(共阳极)
  • 面包板
  • 电线
  • 个人计算机

第2步:RGB LED

我使用共用阴极配置的RGB LED,红色,蓝色和绿色的阴极连接到引脚1,引脚2和引脚3。

第3步:Micro USB

接下来,您需要在Linkit One和PC之间连接micro USB,并从Linkit One官方站点安装必要的驱动程序。

第4步:代码

使用arduino IDE将代码上传到电路板,您需要修改IDE以使其支持Linkit One电路板。同时输入您的网络ssid和密码。

/*

WiFi Web服务器

将宏WIFI_AP,WIFI_PASSWORD和WIFI_AUTH更改为您自己的路由器设置。

* / #include #include #include #include

#define WIFI_AP“ssid”#define WIFI_PASSWORD“password”#define WIFI_AUTH LWIFI_WPA //根据您的WiFi AP配置从LWIFI_OPEN,LWIFI_WPA或LWIFI_WEP中选择//我会首先尝试LWIFI_WPA //如果LWIFI_WEP失败//如果失败LWIFI_OPEN(并找出你为邻居提供WiFi的原因!)

int serverPort = 80; LWiFiServer服务器(serverPort); int LED = 13;

void setup(){pinMode(LED,OUTPUT); LWiFi.begin(); Serial.begin(115200); //继续重试,直到连接到AP Serial.println(“正在连接到AP”); while(0 == LWiFi.connect(WIFI_AP,LWiFiLoginInfo(WIFI_AUTH,WIFI_PASSWORD))){digitalWrite(LED,HIGH);延迟(100); digitalWrite(LED,LOW);延迟(100); digitalWrite(LED,HIGH);延迟(100); digitalWrite(LED,LOW);延迟(600);

} digitalWrite(LED,HIGH); printWifiStatus(); Serial.println(“Start Server”); server.begin(); Serial.println(“Server Started”); digitalWrite(LED,LOW); }

int loopCount = 0;

void loop(){//将你的主代码放在这里,重复运行:String str =“”; String url =“”; int i;延迟(500); loopCount ++; LWiFiClient客户端= server.available(); if(client){Serial.println(“new client”); // http请求以空行结束boolean currentLineIsBlank = true; while(client.connected()){if(client.available()){//我们基本上忽略了客户端请求,但等待HTTP请求结束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(“send response”); //发送标准的http响应头client.println(“HTTP / 1.1 200 OK”); client.println(“Content-Type:text / html”); client.println(“Connection:close”); //完成响应client.println()后,将关闭连接; if(url!= String(“favicon.ico”)){client.println(“”); client.println(“ n n

n

“); IPAddress ip = LWiFi.localIP(); client.println(”

“); client.println(”告诉你的设备做什么!

打开LED。

关闭LED。

“); // 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 off“

“);} else {client.println(”什么都不做

“);} client.println(”

n

“); client.println(); break;}} if(c ==' n'){//你正在开始一个新行currentLineIsBlank = true;} else if(c!=' r'){ //你在当前行上得到一个字符currentLineIsBlank = false;}}} //给网页浏览器时间接收数据延迟(50);

//关闭连接:Serial.println(“close connection”); client.stop(); Serial.println(“客户端断开连接”); }}

void printWifiStatus(){//打印您所连接的网络的SSID:Serial.print(“SSID:”); Serial.println(LWiFi.SSID());

//打印WiFi盾牌的IP地址:IPAddress ip = LWiFi.localIP(); Serial.print(“IP地址:”); Serial.println(IP);

Serial.print(“子网掩码:”); Serial.println(LWiFi.subnetMask());

Serial.print(“网关IP:”); Serial.println(LWiFi.gatewayIP());

//打印接收信号强度:long rssi = LWiFi.RSSI(); Serial.print(“信号强度(RSSI):”); Serial.print(RSSI); Serial.println(“dBm”); }

第5步:运行时间

现在打开一个Web浏览器并连接到Linkit One的IP地址,你应该得到控制来控制RGB LED。