ความรู้แน่น ฟรีสำหรับชุมชน ArduinoAll ที่นี่เท่านั้น

ฟรีและดีที่สุด คอร์สอบรม Arduino + NodeMCU
ทำเพื่อแบ่งปัน ห้ามนำไปจำหน่าย หรือเก็บเงินค่าเรียน
  !!!


  


AllNewStep รับประกันคุณภาพทุกชิ้น วันจันทร์-ศุกร์แจ้งชำระสินค้าก่อน 14.00 จัดส่งทันทีวันนี้ค่ะ

กรุงเทพ /ภาคกลาง ได้พรุ่งนี้


*** สินค้าทุกชิ้น ถ้าสามารถทำรายการสั่งซื้อได้ แสดงว่ามีครบทุกรายการค่ะ *** 

พิมพ์ค้นหาบทความ หัวข้อกระทู้ และสินค้าในเว็บ AllNewStep ได้ที่นี่
QUOTE 

Error compiling for board Arduino/Genuino Mega or Mega 2560.

Warakorn Chuapang

#include "DHT.h"

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

#include <RtcDS3231.h>  //RTC library

#include <SPI.h>

#include <SD.h>

#include <Adafruit_SSD1306.h>

#include <SimpleDHT.h>

 

 

DHT dht;

File myFile; // สร้างออฟเจก File สำหรับจัดการข้อมูล

 

//RtcDS3231 rtcObject;              //Uncomment for version 1.0.1 of the rtc library

RtcDS3231<TwoWire> rtcObject(Wire); //Uncomment for version 2.0.0 of the rtc library

LiquidCrystal_I2C lcd(0x27, 16, 2);

 

const int chipSelect = 53; //CS //ss

 

 

int Relay1 = 22;

int Relay2 = 23;

int Relay3 = 24;

int Relay4 = 25;

int Relay5 = 26;

int Relay6 = 27;

int Relay7 = 28;

int Relay8 = 29;

 

///////////////////////////

 

void setup() {

 

  Serial.println("Sensoren parasitär!!!");

  Serial.begin(9600);

  Serial.println();

  rtcObject.Begin();     //Starts I2C

 

Serial.println("Status\tHumidity (%)\tTemperature (C)\t(F)");

 

  while (!Serial) {

    ; // รอจนกระทั่งเชื่อมต่อกับ Serial port แล้ว สำหรับ Arduino Leonardo เท่านั้น

  }

  dht.setup(4); // data pin 2

 

  Serial.print("Initializing SD card...");

  pinMode(SS, OUTPUT);

 

  if (!SD.begin(chipSelect)) {

    Serial.println("initialization failed!");

    return;

  }

  Serial.println("initialization done.");

 

  ////LCD/////

  

  lcd.begin();

  lcd.backlight();

  lcd.print("Hello, KSP!");

  Serial.println("Status\tHumidity (%)\tTemperature (C)\t(F)");

 

  //RtcDateTime currentTime = RtcDateTime(19, 07, 27, 9, 12, 0); //define date and time object

  //rtcObject.SetDateTime(currentTime); //configure the RTC with object

 

  pinMode(Relay1, OUTPUT);

  pinMode(Relay2, OUTPUT);

  pinMode(Relay3, OUTPUT);

  pinMode(Relay4, OUTPUT);

  pinMode(Relay5, OUTPUT);

  pinMode(Relay6, OUTPUT);

  pinMode(Relay7, OUTPUT);

  pinMode(Relay8, OUTPUT);

 

  dht.setup(4); // data pin 4 

}

//?????? ??????? 1-0 ?????????? 0

void loop() {

 

  delay(dht.getMinimumSamplingPeriod());

  float humidity = dht.getHumidity();

  float temperature = dht.getTemperature();

 

  ///////////////////////////////

 

  RtcDateTime currentTime = rtcObject.GetDateTime();    //get the time from the RTC

  char str[20];   //declare a string as an array of chars

 

  //////////////////////////////////////

 

  //พัดลมเปิดตลอด

 

  digitalWrite (Relay7, LOW);

  delay(1000);

  digitalWrite (Relay8, LOW);

  delay(1000);

 

  ///////////////////////////////////

 

  Serial.print("humidity = ");

  Serial.print(humidity , 1);

  Serial.print("temperature = ");

  Serial.println(temperature, 1);

  delay(1000);

 

  /////////////////////////////////

 

  lcd.begin();

  lcd.setCursor(8, 0);

  lcd.print("H = ");

  lcd.setCursor(11, 0);

  lcd.print(humidity);

 

  lcd.setCursor(8, 1);

  lcd.print("T = ");

  lcd.setCursor(11, 1);

  lcd.print(temperature);

 

  //lcd.begin();//??????????????

  //lcd.setCursor(0, 0); //????????????????

  //lcd.print("");

  //lcd.setCursor(0, 0);

  //lcd.print(str);

 

  sprintf(str, "%d/%d/%d %d:%d:%d",     //%d allows to print an integer to the string

          currentTime.Year(),   //get year method

          currentTime.Month(),  //get month method

          currentTime.Day(),    //get day method

          currentTime.Hour(),   //get hour method

          currentTime.Minute(), //get minute method

          currentTime.Second()  //get second method

         );

 

  Serial.println(str); //print the string to the serial port

 

  //////////////////////////////// เก็บข้อมูล ////////////////////////////////////////

  myFile = SD.open("dht2.txt", FILE_WRITE); // เปิดไฟล์ที่ชื่อ test.txt เพื่อเขียนข้อมูล โหมด FILE_WRITE

 

  // ถ้าเปิดไฟล์สำเร็จ ให้เขียนข้อมูลเพิ่มลงไป

  if (myFile) {

    Serial.print("Writing to test.txt...");

    myFile.print("STR = ");

    myFile.print(str);

    myFile.print(" , ");

    myFile.print("humidity = ");

    myFile.print(humidity);

    myFile.print(" , ");

    myFile.print("temperature = ");

    myFile.println(temperature);// สั่งให้เขียนข้อมูล

    myFile.close(); // ปิดไฟล์

    Serial.println("done.");

  } else {

    // ถ้าเปิดไฟลืไม่สำเร็จ ให้แสดง error

    Serial.println("error opening test.txt");

  }

 

  // เปิดไฟล์เพื่ออ่าน

  myFile = SD.open("dht2.txt"); // สั่งให้เปิดไฟล์ชื่อ test.txt เพื่ออ่านข้อมูล

  if (myFile) {

    Serial.println("test.txt:");

    // อ่านข้อมูลทั้งหมดออกมา

    while (myFile.available()) {

      Serial.write(myFile.read());

    }

    myFile.close(); // เมื่ออ่านเสร็จ ปิดไฟล์

  } else {

    // ถ้าอ่านไม่สำเร็จ ให้แสดง error

    Serial.println("error opening test.txt");

  }

 

 

  /////////////////////////////////////////////////////////////////////////////////////

  if (temperature > 26) {

    digitalWrite (Relay1, LOW);

  }

  else

  {

    digitalWrite (Relay1, HIGH);

  }

  if (humidity  < 55) {

    digitalWrite (Relay2, LOW);

  }

  else

  {

    digitalWrite (Relay2, HIGH);

  }

  if (temperature > 29) {

    digitalWrite (Relay3, LOW);

  }

  else

  {

    digitalWrite (Relay3, HIGH);

  }

  if (temperature > 31) {

    digitalWrite (Relay4, LOW);

    digitalWrite (Relay5, LOW);

    digitalWrite (Relay6, LOW);

  }

  else

  {

    digitalWrite (Relay4, HIGH);

    digitalWrite (Relay5, HIGH);

    digitalWrite (Relay6, HIGH);

  }

}

QUOTE 
ความคิดเห็นที่ #1
Warakorn Chuapang

QUOTE 
ความคิดเห็นที่ #2
Warakorn Chuapang

พอมีวิธีแก้ไหมครับ ผมเพิ่งซื้อ mega r3 มา ผมหาวิธีแก้หลายวิธีและไม่ได้สักที

QUOTE 
ความคิดเห็นที่ #3
เจ้าของร้าน

คอมไพล์ยังไม่ผ่าน ในนี้แจ้งว่าไลบารีซ้ำกัน ลบไลบารีที่ซ้ำกันออก แล้วลงไลบารีให้ถูกต้องก็จะใช้ได้ครับ

แสดงความคิดเห็นที่ 1-3 จากทั้งหมด 3 ความคิดเห็น
ขาย ARDUINO
คุณภาพ อันดับ 1

ได้รับรางวัลร้านยอดเยี่ยม
ตั้งแต่ปี 2558
ขาย Arduino
วีดีโอสอน Arduino

สอน esp8266

สอน Arduino IoT
สอน Arduino แบบเร็ว

สอน NodeMCU

อุปกรณ์ Arduino

MEMBER ZONE

พูดคุย-สอบถาม