أول مرة هنا ؟ تفحص قواعد المشاركة و معلومات أخرى عن عرب overflow!
x

أريد أن أحسب مدة زمنية بإستعمال arduino ماهي الطريقة المثلى ???

+2 صوت
497 مشاهدات

2 إجابة

+1 صوت

في function اسمها millis() ال function دي بتعد الوقت من الاول الاردوينو ماتشتغل بال milliseconds
وفي function تانية اسمها micros() زيها بس بالميكرو
ممكن تقرى عنهم اكتر هنا
http://arduino.cc/en/reference/millis
http://arduino.cc/en/Reference/Micros
ازي تستخدمها في انك تحسب وقت, انك تاخد قيمة الوقت قبل العملية اللي عايز تعملها وبعدها وتطرحهم من بعض (مش بعدها بس عشان كده هيكون الوقت من اول البرنامج ما بدأ)
مثلا

unsigned long z1 =millis();
function()
unsigned long z2=millis();
unsigned long time = z2-z1;
0 صوت

في طريقة سهلة وهي عبر استخدام الدالة millis كما في المرجع التالي
http://arduino.cc/en/reference/millis

اما الطريقة الثانية عبر استخدام ال RTC - Real time clock وميزيتها انك تقدر تحسب الزمن على المدى الطويل وبدقة عالية (بس مكلفة من الناحية المالية) - تقدر تراجع المقال دا علشان تعرفها أكتر
http://playground.arduino.cc/Main/DS1302

اما الطريقة الثالثة وهي مفيدة جداً للازمنة الصغيرة وهي اﻷكثر دقة وبتم عن طريق استخدام ال Timers (دي تعتبر من اصول برمجة ال AVR بشكل عام وليس اردوينو بشكل خاص)

https://www.youtube.com/watch?v=cAui6116XKc

Araboverflow أهلا بكم فى عرب Overflow
المجتمع العربى للأسئلة و الأجوبة التقنية.

أحدث الشارات

100 نقطة
- AHMED002177 -
سؤال ذائع الصيت
- أسماء -
100 نقطة
- MuhGhunaim -
سؤال ذائع الصيت
- Mohamed Slama -
100 نقطة
- عرفة غلمش -
...