حلقة FOR :
منتديات الهندسة الكهربية والإلكترونية والميكاترونكس والكومبيوتر :: برمجة الميكروكونترولر PIC بلغة السى مع المترجم CCS - C
صفحة 1 من اصل 1
حلقة FOR :
حلقة FOR :
تتكرر حلقة WHILE حتى يتسبب حدث خارجى أو داخلى بتعديل القيمة التى تحقق شرط الاختبار .
فى حالات أخرى ، نحتاج تكرار حلقة لعدد محدد من المرات . تستخدم حلقة FOR متغير تحكم الحلقة ، والذى يتم تحديده بقيمة ابتدائية وتعديله لكل تكرار عندما يكون الشرط المحدد صواب true .
فى البرنامج أدناه ، بارامترات حلقة التحكم تعطى ضمن الأقواس التى تلى الكلمة الخاصة for .
يتم تعيين متغير تحكم الحلقة (x) فى البداية بالقيمة صفر ، وتستمر الحلقة طالما أن while هذه القيمة تكون أقل من 5 . يتم تزايد قيمة (x) فى كل مرة تتكرر تدور فيها الحلقة .
التأثير هو وميض الخرج خمس مرات ويتوقف البرنامج عند نهايته ولا يتكرر .
يتضمن البرنامج أيضا استخدام حلقة while للانتظار (طالما أن المفتاح مفتوح)، من أجل غلق المفتاح قبل أن يبدأ تسلسل الوميض . بالإضافة إلى ذلك ، فإن حلقة while(TRUE) الغير مشروطة تنهى البرنامج ، وتمنع تنفيذ البرنامج من التشغيل فى مواقع غير محددة بعد نهاية التسلسل . لهذا ينصح بذلك كلما لا يتم تشغيل البرنامج حلقة مستمرة .
لاحظ أن استخدام الأقواس الفارغة التى لا تحتوى على كود ، تكون اختيارية .
رابط الملفات :
http://www.mediafire.com/download/92ux6c6102asg6v/Lesson1-EX6.zip
تتكرر حلقة WHILE حتى يتسبب حدث خارجى أو داخلى بتعديل القيمة التى تحقق شرط الاختبار .
فى حالات أخرى ، نحتاج تكرار حلقة لعدد محدد من المرات . تستخدم حلقة FOR متغير تحكم الحلقة ، والذى يتم تحديده بقيمة ابتدائية وتعديله لكل تكرار عندما يكون الشرط المحدد صواب true .
فى البرنامج أدناه ، بارامترات حلقة التحكم تعطى ضمن الأقواس التى تلى الكلمة الخاصة for .
- الكود:
// Lesson1-EX6 Repeat loop a set number of times
#include <16F877A.h>
#use delay (clock = 4000000)
void main()
{
int x;
while(input(PIN_C0)) { } ; // Wait until switch closed
for (x = 0; x < 5; x ++) // For loop conditions
{
output_high(PIN_D0); // Flash sequence
delay_ms(500);
output_low(PIN_D0);
delay_ms(500);
}
while(TRUE); // Wait for reset
}
يتم تعيين متغير تحكم الحلقة (x) فى البداية بالقيمة صفر ، وتستمر الحلقة طالما أن while هذه القيمة تكون أقل من 5 . يتم تزايد قيمة (x) فى كل مرة تتكرر تدور فيها الحلقة .
التأثير هو وميض الخرج خمس مرات ويتوقف البرنامج عند نهايته ولا يتكرر .
يتضمن البرنامج أيضا استخدام حلقة while للانتظار (طالما أن المفتاح مفتوح)، من أجل غلق المفتاح قبل أن يبدأ تسلسل الوميض . بالإضافة إلى ذلك ، فإن حلقة while(TRUE) الغير مشروطة تنهى البرنامج ، وتمنع تنفيذ البرنامج من التشغيل فى مواقع غير محددة بعد نهاية التسلسل . لهذا ينصح بذلك كلما لا يتم تشغيل البرنامج حلقة مستمرة .
لاحظ أن استخدام الأقواس الفارغة التى لا تحتوى على كود ، تكون اختيارية .
رابط الملفات :
http://www.mediafire.com/download/92ux6c6102asg6v/Lesson1-EX6.zip
مواضيع مماثلة
» حلقة البرنامج PROGRAM LOOP
» البرمجة بلغة السى – الجزء الثانى -2- حلقة for
» الأردوينو Arduino للمبتدئين
» البرمجة بلغة السى – الجزء الثانى -3- حلقة while وحلقة do…while
» البرمجة بلغة السى – الجزء الثانى -2- حلقة for
» الأردوينو Arduino للمبتدئين
» البرمجة بلغة السى – الجزء الثانى -3- حلقة while وحلقة do…while
منتديات الهندسة الكهربية والإلكترونية والميكاترونكس والكومبيوتر :: برمجة الميكروكونترولر PIC بلغة السى مع المترجم CCS - C
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى