ผมกดปุ่มแล้วส่งการแจ้งเตือนเข้าLineได้ตามต้องการคือกดแล้วส่ง1ครั้งด้วยการใช้คำสั่งLock แต่พอจะเพิ่มปุ่มกด มันไม่ได้ครับมันติด Lock ของอีกปุ่มอยู่มีแนวทาง แนะนำไหมครับ
ดูตัวอย่างนี้ครับ
ขอบคุณมากครับ จะลองดูครับ
โดยโครงสร้างจะเป็นประมาณนี้ เมื่อ lock = true เมื่ออยู่ในสถานะ On กดปุ่ม มันก็จะทำแค่ครั้งเดียว และต้องรอ สถานะ lock = false จาก สถานะ Off ก่อน จึงจะครบลูป
bool lock = false;
void setup(){
}
void loop(){
if(Button == HIGH){
if(lock == false){
//ส่งไลน์
lock = true; // เพื่อไม่ต้องเข้ามาทำเงื่อนไขนี้อีก
}
}else{
if(Button == LOW){
lock = false; //เพื่อให้กลับไปใช้ การส่งไลน์ได้ เมื่อ Button On อีกครั้ง
}
}
}
if(lock1 == false){
//ส่งไลน์
Line_Notify(message1); //ประตูเปิด
lock1 = true; // เพื่อไม่ต้องเข้ามาทำเงื่อนไขนี้อีก
}
}else{
if(timp1 == LOW){
Line_Notify(message2); //ประตูปิด
lock1 = false; //เพื่อให้กลับไปใช้ การส่งไลน์ได้ เมื่อ Button On อีกครั้ง
}
}
***ประตูเปืดแล้ว แจ้งLine1ครั้ง ใช้งานได้แล้วครับ แต่ จะให้แจ้งLineว่าประตูปิด มันไม่ได้ครับ มันส่ง คำว่า ประตูปิดเข้าLine ตลอดเลยเพราะ ลิมิตสวิตถูกกดอยู่ตลอดครับ
if(lock1 == false){
//ส่งไลน์
Line_Notify(message1); //ประตูเปิด
lock1 = true; // เพื่อไม่ต้องเข้ามาทำเงื่อนไขนี้อีก
}
}else{
if(timp1 == LOW && lock1 == true){
Line_Notify(message2); //ประตูปิด
lock1 = false; //เพื่อให้กลับไปใช้ การส่งไลน์ได้ เมื่อ Button On อีกครั้ง
}
}
เชดเข้!!!ขอบคุณมากครับพี่นั่งดำน้ำทั้งวัน ถ้าจะเพิ่มจำนวณประตูก็เพิ่มเหมือนclodeเดิมเข้าไปใช่ไหมครับ
ใช่ครับก็เติม lock1 , lock2 ,…
ขอบคุณมากๆครับบบพี่