您好,登錄后才能下訂單哦!
本篇文章為大家展示了adrduino中怎么利用wido實(shí)現(xiàn)聯(lián)網(wǎng),內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
#include <Adafruit_CC3000.h>
#include <ccspi.h>
#include <SPI.h>
#include <string.h>
#include "utility/debug.h"
#define WiDo_IRQ 7
#define WiDo_VBAT 5
#define WiDo_CS 10
Adafruit_CC3000 WiDo = Adafruit_CC3000(WiDo_CS, WiDo_IRQ, WiDo_VBAT,
SPI_CLOCK_DIVIDER); // you can change this clock speed
#define WLAN_SSID "Tenda_XXXXX" // cannot be longer than 32 characters!
#define WLAN_PASS "12345678"
// Security can be WLAN_SEC_UNSEC, WLAN_SEC_WEP, WLAN_SEC_WPA or WLAN_SEC_WPA2
#define WLAN_SECURITY WLAN_SEC_WPA2
#define TIMEOUT_MS 2000
void setup(){
Serial.begin(115200);
/* Initialise the module */
Serial.println(F("\nInitialising the CC3000 ..."));
if (!WiDo.begin())
{
Serial.println(F("Unable to initialise the CC3000! Check your wiring?"));
while(1);
}
/* NOTE: Secure connections are not available in 'Tiny' mode!
By default connectToAP will retry indefinitely, however you can pass an
optional maximum number of retries (greater than zero) as the fourth parameter.
*/
Serial.println(F("Connecting Router/AP"));
if (!WiDo.connectToAP(WLAN_SSID, WLAN_PASS, WLAN_SECURITY)) {
Serial.println(F("Failed!"));
while(1);
}
Serial.println(F("Router/AP Connected!"));
/* Wait for DHCP to complete */
Serial.println(F("Request DHCP"));
while (!WiDo.checkDHCP())
{
delay(100); // ToDo: Insert a DHCP timeout!
}
}
void loop(){
static Adafruit_CC3000_Client tcpClient;
static unsigned long heartRate = millis();
if(!tcpClient.connected()){
Serial.println("Try to connect the Local Server");
tcpClient.close();
/* Set the target ip address and connection port */
uint32_t ip = WiDo.IP2U32(192,168,0,12);
tcpClient = WiDo.connectTCP(ip, 8080);
if(!tcpClient.connected()){
Serial.println(F("Couldn't connect to server! Make sure TCP Test Tool is running on the server."));
while(1);
}
}
else if(millis() - heartRate > 1000){
heartRate = millis(); // Update time stamp of the microcontroller system
char clientString[30];
sprintf(clientString, "%s%d%s", "Wido heartRate: ",heartRate/1000," s\r\n");
Serial.println(clientString);
tcpClient.fastrprintln(clientString);
}
/* Read data until either the connection is closed, or the timeout is reached. */
unsigned long lastRead = millis();
while (tcpClient.connected() && (millis() - lastRead < TIMEOUT_MS)) {
while (tcpClient.available()) {
char c = tcpClient.read();
Serial.print(c);
lastRead = millis();
// Disable sending message for a moment
heartRate = millis();
}
}
}
上述內(nèi)容就是adrduino中怎么利用wido實(shí)現(xiàn)聯(lián)網(wǎng),你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。