ช่วยหน่อยครับ arduino ผมอยากตั้งเวลา ทุกๆ1ชั่วโมง ให้รีเลย์ ทำงาน1นาทีเเล้วก็ปิดครับ ช่วยหน่อยครับ
ถ้าเวลาแบบไม่นานใช้คำสั่ง delay ได้
แต่เนื่องจากคำสั่ง delay จะทำให้คำสั่งข้างหลังทำงานไม่ได้ ดังนั้นโปรแกรมก็จะค้าง จนกว่า delay จะทำงานครบกำหนด
วิธีแก้คือ ใช้คำสั่ง millis() เพื่อคำนวนเวลา แทนการหน่วงเวลา แต่อาจจะเขียนโคดเยอะซักหน่อย
แนะนำใช้ไลบารีตัวนี้ในการตั้งเวลา ซึ่งใช้คำสั่ง millis() ในการทำงาน จะง่ายและถูกต้องกว่าครับ
#include "SimpleTimer.h"
// the timer object
SimpleTimer timer;
// a function to be executed periodically
void workTime() {
Serial.print("Do This");
}
void setup() {
Serial.begin(9600);
timer.setInterval(1000, workTime);
}
void loop() {
timer.run();
}
https://playground.arduino.cc/Code/SimpleTimer