极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12828|回复: 1

终于学习了点,做个环境监测工作。

[复制链接]
发表于 2018-1-14 22:13:18 | 显示全部楼层 |阅读模式
断断续续学了好久的,终于集中心思做了个小小小小东西,纪念发贴,大神别喷。
一点小曲折,不是插错线,就是写错。过程图


代码在此:
#include <dht11.h>

#include <SD.h>

/*环境监测器
* 使用DHT11和光敏电阻制作
* 相关数据存放于SD卡内
*/
dht11 DHT11;          //
#define DHT11_PIN 5  //DHT11 引脚
#define LIGHT_PIN A0  // 光敏模块引脚
const int chipSelect = 4;  // TF卡CS选择引脚

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);   //初始化串口
  pinMode(10,OUTPUT);  //将SS引脚设置为输出状态,UNO为10号引脚
  
  Serial.println("Initializing SD card");//初始化SD卡
  if(!SD.begin(chipSelect)){
    Serial.println("initialization failed!");
    return;
  }
  Serial.println("initialization done");
}

void loop() {
  // put your main code here, to run repeatedly:
  
  DHT11.read(DHT11_PIN);
  
  int light = analogRead(LIGHT_PIN);
  Serial.println("已打开记录文件,检测数据即将写入……");
  File dataFile = SD.open("datalog.txt",FILE_WRITE);
  if(dataFile){
    Serial.println("从温湿度传感器读取数据……");
    dataFile.print(DHT11.humidity);
    Serial.print("当前湿度是:");
    Serial.print(DHT11.humidity);
    Serial.println("%");
    dataFile.print(",");
    dataFile.print(DHT11.temperature);
    Serial.print("当前温度是:");
    Serial.print(DHT11.temperature);
    Serial.println("℃");
    dataFile.print(",");
    Serial.println("从光敏电阻读取光照数据……");
    dataFile.println(light);
    Serial.print("当前光照度是:");
    Serial.print(light);
   Serial.println("Lux");
    dataFile.close();
   
  }
  else{
    Serial.println("error opening datalog.txt");
  }
  Serial.println("本次检测结束,请稍等,数据马上来……");
  Serial.println();
  delay(3000);
}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2018-1-15 23:07:32 | 显示全部楼层
你既然用到 analogRead() ,那你要关注 analogReferece  (XXX ) 函数,我的电动门引入 analogReferece(XXX) 才成功的。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-20 21:36 , Processed in 0.038337 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表