آموزش آردوینودستورات آردوینو
داده static در برنامه نویسی آردوینو (کلیدواژه static)

از کلمه کلیدی استاتیک (static) برای ایجاد متغیرهایی استفاده می شود که فقط برای یک تابع قابل مشاهده هستند. اما برخلاف متغیر های محلی (Local) که هر بار فراخوانی یک تابع ایجاد و از بین می روند ، متغیرهای static فراتر از فراخوانی عملکرد باقی می مانند و داده های خود را بین فراخوانی تابع ها حفظ می کنند.
متغیرهایی که بصورت استاتیک ایجاد می شوند فقط در اولین بار فراخوانی یک تابع ایجاد و مقداردهی اولیه می شوند.
کد نمونه داده static
#define randomWalkLowRange -20 #define randomWalkHighRange 20 int stepsize; int thisTime; void setup() { Serial.begin(9600); } void loop() { // تست عملکرد randomWalk stepsize = 5; thisTime = randomWalk(stepsize); Serial.println(thisTime); delay(10); } int randomWalk(int moveSize) { static int place; // ایجاد یک داده استاتیک // مقادیر بین دو فراخوانی عملکرد ها هستند اما عملکرد های دیگه آن را تغییر نمیدهند place = place + (random(-moveSize, moveSize + 1)); if (place < randomWalkLowRange) { // بررسی مقدار حداکثر و حداقل place = randomWalkLowRange + (randomWalkLowRange - place); // انعکاس مقدار در قسمت مثبت } else if (place > randomWalkHighRange) { place = randomWalkHighRange - (place - randomWalkHighRange); // انعکاس مقدار در قسمت منفی } return place; }
مقاله پیشنهادی: آموزش راه اندازی PWM با برد آردوینو Due