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

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


  


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

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


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

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

เพิ่มสวิตช์ในคำสั่ง millis ยังไงคับ

Flim
ผมจะเอาสวิตช์เอาไปหน่วงเวลาของ Module Relay คับ โดยใช้คำสั่ง millis แบบว่ากดสวิตช์แล้วให้ Relay ทำงาน 15นาที แล้วดับครับ แต่ผมไม่รู้ว่าต้องใช้คำสั่งสวิตช์อะไร
#define INTERVAL_MESSAGE1 1000 //1วินาที
extern volatile unsigned long timer0_millis;

unsigned long time_1 = 0;
int m = 0;
//void print_time(unsigned long time_millis);

const int L1 = 2;

void setup() {
Serial.begin(9600);
pinMode (L1,OUTPUT);
}

void loop() {
if(millis() - time_1 > m){
if(m < 2){ //ให้ m แทนนาที เมื่อ m = 15 จะออกจากลูปจับเวลา
if(millis() - time_1 >= INTERVAL_MESSAGE1){
time_1 = millis();
digitalWrite(L1,HIGH);
Serial.print("Time: ");
Serial.print(time_1/1000);
Serial.print(" s ");
Serial.print(m);
Serial.println(" m ");
}
else if(time_1 == 60000){ //เมื่อครบ 60 วิ
m++; //ให้ m+ 1
timer0_millis = 0; //ให้ reset วินาทีกลับเป็น 0
}
if(m == 2){
digitalWrite(L1,LOW);
}
}
}
}
QUOTE 
ความคิดเห็นที่ #1
เจ้าของร้าน

ใช้ไลบารี thread จะเขียนโค้ดสั่นลงครับ

ลองดูตัวนีี้ https://github.com/ivanseidel/ArduinoThread

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

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

สอน esp8266

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

สอน NodeMCU

อุปกรณ์ Arduino

MEMBER ZONE

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