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

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


  


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

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


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

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

RTC DS3231 สามาตั้งเวลา วันละ 2 รอบได้ไหม จากตัวอย่างโค๊ดของเว็บ

มอส

// Date, Time and Alarm functions using a DS3231 RTC connected via I2C and Wire lib

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);

 

#include "Wire.h"

#include "SPI.h"  // not used here, but needed to prevent a RTClib compile error

#include "RTClib.h"

 

RTC_DS3231 RTC;

 

int light = 13;

int pum = 8;

 

void setup () {

  lcd.begin();

  lcd.setCursor(5, 0);

  lcd.print("SMART FARM");

 

   pinMode(light, OUTPUT);     

   pinMode(pum, OUTPUT);

 

  Serial.begin(9600);

  Wire.begin();

  RTC.begin();

  //RTC.adjust(DateTime(__DATE__, __TIME__));

 

  if (! RTC.isrunning()) {

    Serial.println("RTC is NOT running!");

    // following line sets the RTC to the date & time this sketch was compiled

    RTC.adjust(DateTime(__DATE__, __TIME__));

  }

 

  DateTime now = RTC.now();

  /* ตั้งเวลา ในตัวอย่างนี้ เซตค่าเป็นเวลา 23:09 ถ้าถึงเวลานี้จะให้ทำงานที่ฟังก์ชัน 

    RTC.setAlarm1Simple(23, 9);

   if (RTC.checkIfAlarm(1)) {

   Serial.println("Alarm Triggered");

   }*/

RTC.setAlarm1Simple(21, 35);

    RTC.turnOnAlarm(1);

RTC.setAlarm1Simple(21, 36);

    RTC.turnOnAlarm(2);

 

  if (RTC.checkAlarmEnabled(1)) {

    Serial.println("Alarm Enabled");

  }

 

}

 

void loop () {

 

  DateTime now = RTC.now();

  

  Serial.print(now.year(), DEC);

  Serial.print('/');

  Serial.print(now.month(), DEC);

  Serial.print('/');

  Serial.print(now.day(), DEC);

  Serial.print(' ');

  Serial.print(now.hour(), DEC);

  Serial.print(':');

  Serial.print(now.minute(), DEC);

  Serial.print(':');

  Serial.print(now.second(), DEC);

 

  lcd.setCursor(1, 1);

  lcd.print(now.year(), DEC);

  lcd.print('/');

  lcd.print(now.month(), DEC);

  lcd.print('/');

  lcd.print(now.day(), DEC);

  //lcd.print(' ');

  lcd.setCursor(11, 1);

  lcd.print(now.hour(), DEC);

  lcd.print(':');

  lcd.print(now.minute(), DEC);

  lcd.print(':');

  lcd.print(now.second(), DEC);

 

  

  if (RTC.checkIfAlarm(1)) {

    Serial.println("ledlight ON");

    digitalWrite(light, HIGH);  

  }

 

   if (RTC.checkIfAlarm(2)) {

    Serial.println("ledlight ON");

    digitalWrite(pum, HIGH);  

  }

  /*

  if (now.hour == 21)

     {

      digitalWrite(light,HIGH);

     }

 */

 

  

   lcd.setCursor(1, 2);

   lcd.print("Tempeature = ");

  Serial.println();

  Serial.print("Tempeature = ");

  Serial.print(RTC.getTemperature()); // คำสั่งดึงอุณหภูมิออกมาแสดง

   lcd.print(RTC.getTemperature()); // คำสั่งดึงอุณหภูมิออกมาแสดง

    lcd.print('C');

  Serial.println("C");

 

 

 

  

  Serial.println(); 

  delay(1000);

}

QUOTE 
ความคิดเห็นที่ #1
มอส
เช่นตั้งให้เปิดเวลา 6 น โมงแล้วปิดเวลา 18.00 น ที่ลองจากโค๊ดพยายามแก้ให้ตั้งเวลาได้แต่ยังแก้โค๊ดไม่ได้ทีครับ
QUOTE 
ความคิดเห็นที่ #2
เจ้าของร้าน

ตั้งกี่เวลาก็ได้ โดยดึงค่าเวลามาเก็บไว้ในตัวแปร string แล้วใช้ if ตรวจสอบครับ

การดึงค่าวันที่/เวลา ตามตัวอย่างโคดนี้

Serial.print(now.year(), DEC);

  Serial.print('/');

  Serial.print(now.month(), DEC);

  Serial.print('/');

  Serial.print(now.day(), DEC);

  Serial.print(' ');

  Serial.print(now.hour(), DEC);

  Serial.print(':');

  Serial.print(now.minute(), DEC);

  Serial.print(':');

 

  Serial.print(now.second(), DEC);

QUOTE 
ความคิดเห็นที่ #3
เป้ อินดี้
ขอตัวอย่างการดึงตัวแปรโดยการใช้ตัวแปร String (char) ในการนำมาใช้กับ if หน่อยครับ
QUOTE 
ความคิดเห็นที่ #4
เจ้าของร้าน

 

ตัวอย่างการ เปรียบเทียบ string ตามนี้ครับ

https://www.arduino.cc/en/Tutorial/StringComparisonOperators

QUOTE 
ความคิดเห็นที่ #5
shusak

เราสามารถตั้งเป็นวันและเวลาได้ไหมครับ เช่นพอถึงวันอังคารเวลาบ่าย3ให้หลอดไฟเปิด

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

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

สอน esp8266

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

สอน NodeMCU

อุปกรณ์ Arduino

MEMBER ZONE

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