تابع delay وقفه ای برحسب میلی ثانیه ایجاد میکند و برای ایجاد وقفه به میزان مشخص میتوان از آن استفاده کرد اما در کاربردهایی که کدنویسی همزمان با وقفه ی برنامه لازم است کاربردی ندارد زیرا باعث قفل برنامه در خط وقفه میشود
;(delay(int milisecond
نونه برنامه زیر را ببینید
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
int h=0; int day=0; long int i; void setup() { // put your setup code here, to run once: pinMode(13,OUTPUT); digitalWrite(13,LOW); for(i=0;i<3600;i++){ //ایجاد 3600وقفه 1 ثانیه ای معادل 1 ساعت delay(1000); } } void loop() { // put your main code here, to run repeatedly: h++; // شمارش ساعت if(day<18){ //اجرای این قطعه کد برای 18 روز digitalWrite(13,HIGH); delay(20000); // تغییر وضعیت پایه خروجی برای 20 ثانیه digitalWrite(13,LOW); } if(h==24){ h=0; day++; //شمارش روز if(day==21){ // تکرار برنامه در هر 21 روز day=0; } } for(i=0;i<3580;i++){ delay(1000); // ایجاد 3580وقفه 1 ثانیه ای معادل 59 دقیقه و 40 ثانیه } } |
دانلود فایل های برنامه : New folder