“温度湿度计”的版本间的差异
853387039@qq.com(讨论 | 贡献) (→准备) |
(→软件调试) |
||
(未显示同一用户的11个中间版本) | |||
第25行: | 第25行: | ||
|} | |} | ||
− | [[File:ble_Temp&Hum.jpg|600px|center | + | [[File:ble_Temp&Hum.jpg|600px|center]] |
==文档== | ==文档== | ||
Android客户端: | Android客户端: | ||
注意:新版BT是蓝牙4.0,需要Android 4.3以上的系统才能支持。这里只提供Android的APP。 | 注意:新版BT是蓝牙4.0,需要Android 4.3以上的系统才能支持。这里只提供Android的APP。 | ||
− | APP下载: | + | <br> |
+ | APP下载: | ||
+ | [[File:Microduino-Temp&Hum-APP.gif|center|200px]] | ||
==准备 == | ==准备 == | ||
− | *Setup | + | *Setup 1:将Light光敏传感器接到Sensorhub的A0引脚上。将温湿度传感器接到Hub的IIC引脚上。 |
− | + | [[File:Temp&Hum_ble.jpg|600px|center]] | |
− | + | *Setup 2:将CoreUSB、BT、传感器与Hub叠堆,连接到电脑。 | |
− | [[File:Temp&Hum_ble.jpg|600px|center | + | [[File:CoreUSB_Ble_Sensorhub.jpg|600px|center]] |
− | *Setup | ||
− | [[File:CoreUSB_Ble_Sensorhub.jpg|600px|center | ||
==软件调试== | ==软件调试== | ||
*打开Arduino IDE,将下列代码复制到IDE中。 | *打开Arduino IDE,将下列代码复制到IDE中。 | ||
<source lang="cpp"> | <source lang="cpp"> | ||
+ | #include <Wire.h> | ||
+ | #include "I2Cdev.h" | ||
+ | #include <AM2321.h> | ||
+ | AM2321 am2321; | ||
+ | |||
+ | #include <SoftwareSerial.h> | ||
+ | |||
+ | SoftwareSerial mySerial(4, 5); // RX, TX | ||
+ | |||
+ | //#define Serial_com mySerial | ||
+ | #define Serial_com Serial1 | ||
+ | |||
+ | float sensor_tem, sensor_hum, sensor_lux, sensor_light; | ||
+ | |||
+ | String dataToSend; | ||
+ | char buf[10]; | ||
+ | |||
+ | void setup() { | ||
+ | Serial.begin(9600); | ||
+ | |||
+ | Serial_com.begin(9600); | ||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | //获取温湿度============================================== | ||
+ | am2321.read(); | ||
+ | sensor_tem = am2321.temperature / 10.0; | ||
+ | sensor_hum = am2321.humidity / 10.0; | ||
+ | |||
+ | sensor_light = map(analogRead(A0), 0, 1023, 0, 255); | ||
+ | |||
+ | dtostrf(sensor_tem, 1, 1, buf); | ||
+ | dataToSend = "{T:" + String(buf) + "}"; | ||
+ | Serial_com.print(dataToSend); | ||
+ | Serial.println(dataToSend); | ||
+ | delay(1000); | ||
+ | |||
+ | dtostrf(sensor_hum, 1, 1, buf); | ||
+ | dataToSend = "{H:" + String(buf) + "}"; | ||
+ | Serial_com.print(dataToSend); | ||
+ | Serial.println(dataToSend); | ||
+ | delay(1000); | ||
+ | |||
+ | dtostrf(sensor_light, 1, 1, buf); | ||
+ | dataToSend = "{L:" + String(buf) + "}"; | ||
+ | Serial_com.print(dataToSend); | ||
+ | Serial.println(dataToSend); | ||
+ | delay(1000); | ||
+ | |||
+ | dataToSend = ""; | ||
+ | } | ||
</source> | </source> | ||
* Setup 1:选择正确的板卡和COM端口,编译通过后直接下载。 | * Setup 1:选择正确的板卡和COM端口,编译通过后直接下载。 | ||
− | [[file:upload.JPG| | + | [[file:upload.JPG|600px|center]] |
* Setup 2:下载Android客户端。解压安装并打开,如果没有打开蓝牙,会提示用户需要打开蓝牙设备。 | * Setup 2:下载Android客户端。解压安装并打开,如果没有打开蓝牙,会提示用户需要打开蓝牙设备。 | ||
[[File:Microduino_BT_Serial_1.png||300px|center]] | [[File:Microduino_BT_Serial_1.png||300px|center]] | ||
第53行: | 第104行: | ||
*初始情况在右上角出现Serial Present,等待变成Serial ready,此时就能正常通讯了。每隔1S上传一个环境数据。 | *初始情况在右上角出现Serial Present,等待变成Serial ready,此时就能正常通讯了。每隔1S上传一个环境数据。 | ||
[[File:Microduino_BT_Temp&Hum.png||300px|center]] | [[File:Microduino_BT_Temp&Hum.png||300px|center]] | ||
+ | |||
==软件说明== | ==软件说明== | ||
*CoreUSB与蓝牙的通讯串口:Serial1 | *CoreUSB与蓝牙的通讯串口:Serial1 |
2016年2月11日 (四) 12:56的最新版本
Language | English |
---|
目的将获取到的环境数据通过手机查看。 原理通过温湿度传感器和光敏传感器将获取到的环境数据结合mCookie-BT蓝牙传送到手机上。 设备
文档Android客户端:
注意:新版BT是蓝牙4.0,需要Android 4.3以上的系统才能支持。这里只提供Android的APP。
准备
软件调试
#include <Wire.h>
#include "I2Cdev.h"
#include <AM2321.h>
AM2321 am2321;
#include <SoftwareSerial.h>
SoftwareSerial mySerial(4, 5); // RX, TX
//#define Serial_com mySerial
#define Serial_com Serial1
float sensor_tem, sensor_hum, sensor_lux, sensor_light;
String dataToSend;
char buf[10];
void setup() {
Serial.begin(9600);
Serial_com.begin(9600);
}
void loop() {
//获取温湿度==============================================
am2321.read();
sensor_tem = am2321.temperature / 10.0;
sensor_hum = am2321.humidity / 10.0;
sensor_light = map(analogRead(A0), 0, 1023, 0, 255);
dtostrf(sensor_tem, 1, 1, buf);
dataToSend = "{T:" + String(buf) + "}";
Serial_com.print(dataToSend);
Serial.println(dataToSend);
delay(1000);
dtostrf(sensor_hum, 1, 1, buf);
dataToSend = "{H:" + String(buf) + "}";
Serial_com.print(dataToSend);
Serial.println(dataToSend);
delay(1000);
dtostrf(sensor_light, 1, 1, buf);
dataToSend = "{L:" + String(buf) + "}";
Serial_com.print(dataToSend);
Serial.println(dataToSend);
delay(1000);
dataToSend = "";
}
软件说明
#define my_Serial Serial1
dtostrf(sensor_tem, 1, 1, buf);
dataToSend = "{T:" + String(buf) + "}";
Serial_com.print(dataToSend);
Serial.println(dataToSend);
delay(1000);
视频 |