文档章节

adrduino 使用wido联网

jingshishengxu
 jingshishengxu
发布于 2016/05/30 17:24
字数 302
阅读 41
收藏 0

 

#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();
    }
  }
}
 

© 著作权归作者所有

jingshishengxu
粉丝 73
博文 510
码字总数 53727
作品 0
杭州
部门经理
私信 提问
Apache libcloud 1.0.0-pre1 发布

Apache libcloud 1.0.0-pre1 发布,更新信息如下: General Introduction of container based drivers for Docker, Rkt and Container-as-a-service providers (LIBCLOUD-781, GITHUB-666) ......

淡漠悠然
2016/01/27
1K
0
Ceph 0.84 开发版发布,分布式文件系统

Ceph 0.84 开发版发布了,下载地址: ceph-0.84.tar.bz2 ceph-0.84.tar.gz 该版本包含:365 commits,值得关注的改进有: ceph-conf: flush log on exit (Sage Weil) ceph-dencoder: refact......

oschina
2014/08/20
1K
2
Ceph 0.85 发布,分布式文件存储系统

Ceph 0.85 发布了,值得关注的改进有: ceph-disk: do not inadvertantly create directories (Owne Synge) ceph-disk: fix dmcrypt support (Sage Weil) ceph-disk: linter cleanup, loggin......

oschina
2014/09/09
1K
0
Ceph v0.94.8 Hammer 发布,分布式存储系统

Ceph v0.94.8 Hammer 发布了,该版本修复了很多 Bug,建议 0.94.x 的用户升级。 该版本详细改进记录包括: build/ops: Add -D_LARGEFILE64_SOURCE to Linux build. (issue#16611,pr#10182, ...

红薯
2016/08/27
881
0
2018中国汽车联网国际峰会

当下,联网汽车乃是物联网系统的重要组成。汽车联网是实现自动驾驶和智慧交通系统的基础条件。促使汽车联网发展的主要因素涉及到人们日益增长的对便捷性的需求,联网更加便利。不仅如此,原来...

蟠桃会会议平台
2018/07/05
11
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
今天
5
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
9
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
12
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
11
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部