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

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


  


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

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


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

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

ผมไม่เข้าใจกับการแสดงผมของ ds1302ครับ

แบงค์

มันขึ้นแบบนี้อะครับ (unknown day) 2000-00-00 00:00:00

(unknown day) 2000-00-00 00:00:00

(unknown day) 2000-00-00 00:00:00

(unknown day) 2000-00-00 00:00:00

(unknown day) 2000-00-00 00:00:00

(unknown day) 2000-00-00 00:00:00

(unknown day) 2000-00-00 00:00:00

(unknown day) 2000-00-00 00:00:00

(unknown day) 2000-00-00 00:00:00

   ซึ่งผมเอาโค้ดมาจากไลเบอรี่ทั้งหมด  เซ็นเซอร์ มันทำไมถึงรันแบบนี้อะครับ

QUOTE 
ความคิดเห็นที่ #1
แบงค์

ฝาก แอดช่วยหน่อยครับ  ผมนั่งแก้มานานแล้วอะครับ

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

ไม่ยากครับ ต่อตามนี้

ไลบารี http://domoticx.phoenixinteractive.nl/arduino/libraries/ds13xx_ds32xx/DS1302%20v2.2.7z

วิธีการต่อ http://domoticx.com/arduino-rtc-tijdklok-ds1302/

โคดตัวอย่าง

/*

อัพโหลดโคด 2 ครั้ง ครั้งแรกเป็นการตั้งเวลา ครั้งที่สองเป็นการปิดคำสั่งตั้งเวลา

*/

#include <DS1302.h>

// Init the DS1302
// DS1302 rtc([CE/RST], [I/O], [CLOCK]);
DS1302 rtc(8, 7, 6);

void setup() {
  // Set the clock to run-mode, and disable the write protection
  rtc.halt(false);
  rtc.writeProtect(false);

  // Setup Serial connection
  Serial.begin(9600);

  // The following lines can be commented out to use the values already stored in the DS1302
  // ตั้งเวลาตรงนี้ เมื่อรันครั้งต่อไป ให้เอาคำสั่งตั้งเวลา 3 บรรทัดออก ไม่งั้นเวลาจะถูกต้องใหม่ทุกครั้งที่ทำงาน
  rtc.setDOW(MONDAY);        // Set Day-of-Week to FRIDAY
  rtc.setTime(13, 59, 0);     // Set the time to 12:00:00 (24hr format)
  rtc.setDate(14, 11, 2016);   // Set the date to August 6th, 2010
  //
}

void loop() {
  // Send Day-of-Week
  Serial.print(rtc.getDOWStr());
  Serial.print(" ");

  // Send date
  Serial.print(rtc.getDateStr());
  Serial.print(" -- ");

  // Send time
  Serial.println(rtc.getTimeStr());

  // Wait one second before repeating :)
  delay (1000);
}

QUOTE 
ความคิดเห็นที่ #3
แบงค์

 rtc.settDOW(FRIDAY);        // Set Day-of-Week to FRIDAY   เตือนแดงทั้งบรรทัด

 

exit status 1

'class DS1302' has no member named 'settDOW'   ด้านล่างสุด  ทำตามทุกอย่างแล้ว   

    ผมให้ไลเบอรี่ setclock เพราะ ผมจะใช้ตัวนี้ในการตั้งเวลาเตือนทุก1ชั่วโฒงครับ 

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

ลองลงไลบารีใหม่ครับ ใช้ตัวที่ให้ไป

ตั้งเวลาทุก 1 ชั่วโมงเขียนโปรแกรมเช็คได้ครับ

QUOTE 
ความคิดเห็นที่ #5
แบงค์

 

พี่ครับทำไม มันขึ้นอย่างนี้อะครับ  ผมอยากให้มันดังทุก1ชั่วโมงอะครับ  มีแหล่งที่ศึกษษไหมครับ  ผมมือใหม่อะครับ  อยากศึกษา แล้วทำส่ง อาจารย์อะครับ ขอบคุณครับ

 

Friday 22.11.2016 -- 18:56:03

218:56:03 24.22.2002 -- 03:10:40

Friday 22.11.2016 -- 18:56:05

218:56:05 24.22.2002 -- 03:10:40

Friday 22.11.2016 -- 18:56:07

218:56:07 48.44.2005 -- 06:15:02

Friday 22.11.2016 -- 18:56:09

218:56:09 48.44.2005 -- 06:15:04

Friday 22.11.2016 -- 18:56:11

218:56:11 48.44.2005 -- 06:15:04

Friday 22.11.2016 -- 18:56:13

218:56:13 24.22.2002 -- 03:10:42

Friday 22.11.2016 -- 18:56:15

218:56:15 24.22.2002 -- 03:10:42

 

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

แบบนี้แสดงว่าดึงเวลามาได้แล้ว

ก็สามารถเขียนโคดเช็ค if ตามเงื่อนไขได้แล้วครับ

https://www.arduino.cc/en/Reference/Else

 

QUOTE 
ความคิดเห็นที่ #7
แบงค์

ขอบคุณสำหรับคำแนะนำต่างๆนะครับ ผมทำได้และครับ   

ขอถามอีกอย่างนะครับ  ผมอยากให้มันแสดงค่าแบบนี้อะครับ แต่ตอนนี้มันแบบข้อความข้างบนอะครับ

 

Friday 22.11.2016 -- 18:56:03

Friday 22.11.2016 -- 18:56:05

Friday 22.11.2016 -- 18:56:07

Friday 22.11.2016 -- 18:56:09

 

QUOTE 
ความคิดเห็นที่ #8
แบงค์

ขอบคุณสำหรับคำแนะนำต่างๆนะครับ ผมทำได้และครับ   

ขอถามอีกอย่างนะครับ  ผมอยากให้มันแสดงค่าแบบนี้อะครับ แต่ตอนนี้มันแบบข้อความข้างบนอะครับ

 

Friday 22.11.2016 -- 18:56:03

Friday 22.11.2016 -- 18:56:05

Friday 22.11.2016 -- 18:56:07

Friday 22.11.2016 -- 18:56:09

 

ขอบคุณสำหรับคำแนะนำต่างๆนะครับ ผมทำได้และครับ   

ขอถามอีกอย่างนะครับ  ผมอยากให้มันแสดงค่าแบบนี้อะครับ แต่ตอนนี้มันแบบข้อความข้างบนอะครับ

 

Friday 22.11.2016 -- 18:56:03

Friday 22.11.2016 -- 18:56:05

Friday 22.11.2016 -- 18:56:07

Friday 22.11.2016 -- 18:56:09

 

ขอบคุณสำหรับคำแนะนำต่างๆนะครับ ผมทำได้และครับ   

ขอถามอีกอย่างนะครับ  ผมอยากให้มันแสดงค่าแบบนี้อะครับ แต่ตอนนี้มันแบบข้อความข้างบนอะครับ

 

Friday 22.11.2016 -- 18:56:03

Friday 22.11.2016 -- 18:56:05

Friday 22.11.2016 -- 18:56:07

Friday 22.11.2016 -- 18:56:09

 

ขอบคุณสำหรับคำแนะนำต่างๆนะครับ ผมทำได้และครับ   

ขอถามอีกอย่างนะครับ  ผมอยากให้มันแสดงค่าแบบนี้อะครับ แต่ตอนนี้มันแบบข้อความข้างบนอะครับ

 

Friday 22.11.2016 -- 18:56:03

Friday 22.11.2016 -- 18:56:05

Friday 22.11.2016 -- 18:56:07

Friday 22.11.2016 -- 18:56:09

 

ขอบคุณสำหรับคำแนะนำต่างๆนะครับ ผมทำได้และครับ   

ขอถามอีกอย่างนะครับ  ผมอยากให้มันแสดงค่าแบบนี้อะครับ แต่ตอนนี้มันแบบข้อความข้างบนอะครับ

 

Friday 22.11.2016 -- 18:56:03

Friday 22.11.2016 -- 18:56:05

Friday 22.11.2016 -- 18:56:07

Friday 22.11.2016 -- 18:56:09

 

ขอบคุณสำหรับคำแนะนำต่างๆนะครับ ผมทำได้และครับ   

ขอถามอีกอย่างนะครับ  ผมอยากให้มันแสดงค่าแบบนี้อะครับ แต่ตอนนี้มันแสดงค่าแบบ 

ความคิดเห็นที่ #5  อะครับ

 

Friday 22.11.2016 -- 18:56:03

Friday 22.11.2016 -- 18:56:05

Friday 22.11.2016 -- 18:56:07

Friday 22.11.2016 -- 18:56:09

 







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

น่าจะมีคำสั่ง delay ทำให้ไม่แสดงผลทุก 1 นาที ลองเช็คโคดครับ

QUOTE 
ความคิดเห็นที่ #10
แบงค์

นี่ครับพี่โค้ดทั้งหมด 

#include <DS1302.h>

#include <Wire.h> 

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3F, 16, 2);

DS1302 rtc(8, 7, 6);

void setup()

{

  rtc.halt(false);

  rtc.writeProtect(false);

  Serial.begin(9600);

  rtc.setDOW(WEDNESDAY);        

  rtc.setTime(23,24, 0);     

  rtc.setDate(23,11,2016);   

}

 

void loop()

{

  lcd.begin();

  // Send Day-of-Week

  //lcd.print(rtc.getDOWStr());

  //Serial.print(" ");

  

  // Send date

  lcd.print(rtc.getDateStr());

 // Serial.print(" -- ");

lcd.setCursor(0,1);

  // Send time

  lcd.println(rtc.getTimeStr());

  

  // Wait one second before repeating :)

  delay (1000);

}

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

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

สอน esp8266

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

สอน NodeMCU

อุปกรณ์ Arduino

MEMBER ZONE

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