极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9457|回复: 1

【求助】为什么SD卡总是初始化失败,DHT11也没有数据

[复制链接]
发表于 2014-5-2 16:44:59 | 显示全部楼层 |阅读模式
1602+SD+BMP085+DHT11+arduino nano
帮忙看一下程序,谢谢




#include <Wire.h>
#include <Adafruit_BMP085.h>
Adafruit_BMP085 bmp;
#include <dht11.h>
dht11 DHT11;
#define DHT11PIN 2
#include <SD.h>
const int chipSelect = 9;
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 7, 6, 5, 4, 3);


void setup()
{
Serial.begin(9600);
pinMode(10, OUTPUT);
Wire.begin();
bmp.begin();
lcd.begin(16, 2);
lcd.print("biao");
Serial.println("Initializing SD card");
if (!SD.begin(chipSelect))
{
Serial.println("initialization failed!");
return;
}
Serial.println("initialization done.");
delay(3000);
lcd.clear();
}
void loop()
{
int a=0;
for(a=0;a<15;a++)
{
int b=0;
for(b=0;b<3;b++)
{
lcd.setCursor(0, 0);
lcd.print("Temp=");
lcd.print(bmp.readTemperature());
lcd.write(0xdf);
lcd.write('C');

lcd.setCursor(0, 1);
lcd.print("Atmos=");
lcd.print(bmp.readPressure());
lcd.print("Pa");
delay(5000);
}
lcd.clear();

lcd.setCursor(0, 0);
lcd.print("Alt=");
lcd.print(bmp.readAltitude());
lcd.print("m");
lcd.setCursor(0, 1);
lcd.print("RAlt=");
lcd.print(bmp.readAltitude(101500));
lcd.print("m");
delay(12500);
lcd.clear();

lcd.setCursor(0, 0);
lcd.print("HR=");
lcd.print(DHT11.humidity);
lcd.print("%");
delay(12500);
}
File dataFile = SD.open("datalog.txt", FILE_WRITE);
dataFile.print(bmp.readTemperature());
dataFile.print("℃");
dataFile.print(",");
dataFile.print(bmp.readPressure());
dataFile.print("Pa");
dataFile.print(",");
dataFile.println(DHT11.humidity);
dataFile.print("%");
dataFile.close();
}
回复

使用道具 举报

发表于 2014-5-2 21:07:03 | 显示全部楼层
lcd和SD卡占用同一个ce或cs。
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-13 22:39 , Processed in 0.036734 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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