
ทำได้ครับ เขียนโปรแกรม Arduino ควบคุมปกติไม่ต้องมี RTC ใช้ if เช็คและ delay เอา แต่เวลาอาจจะไม่แม่น เพราะ arduino ต้องทำงานหลายคำสั่งมีผลต่อเวลา delay
แต่ถ้าจะให้ง่ายผมแนะนำให้ต่อเพิ่มจะสะดวกในการเขียนโคดและแม่นยำกว่าครับ
หรืออาจจะลองใช้ฟังชันนี้ดูครับ millis() ฟังชันนี้จะเป็นค่าของเวลาที่เครื่องเริ่มทำงาน ปิดเปิดเครื่องใหม่ก็จะเริ่ม 0 ใหม่ ประมาณ เปิดเครื่องปุ๊บ millis ได้0 ผ่านไป 1 นาที ขอ millis() อีกก็จะได้ 1000 -*- งงไม๊ผมอธิบายไม่เก่ง
เมื่อทาบบัตรก็ให้บันทึกหมายเลขบัตร คู่กับเวลา millis() ณ ตอนนั้น
เมื่อทาบบัตรใบเดิมอีก ก็ให้เอาค่าเวลา millis() ณ ตอนที่ทาบ ไปลบกับ เวลาในอดีตที่บันทึกไว้
ก็จะรู้แล้ว่าบัตรหมายเลขนั้นๆ ทาบห่างกันกี่วินาทีแล้ว ส่วนจะจำกัดกี่วินาที ก็ if else ตามสะดวกครับ
แต่ millis() นี้มีข้อจำกัดนิดหน่อย ค่าจะเพิ่มขึ้นเรื่อยๆ จนถึงค่าค่านึง(จำไม่ได้แล้ว) ก็จะวนมา 0 ใหม่ แต่ก็หลายวันอยู่นะครับ ลองดูครับ

ตามนี้เลยครับ
ขอบคุณที่ช่วยแชร์ความรู้ครับ : )
ArduinoAll ขาย Arduino ซื้อ Arduino ทุกอย่าง เปลี่ยนชื่อเป็น AllNewStep