6- الدخول إلى حلقة do{….}while(1) الغير منتهية وفيها :
# اختبار حالة المفتاح المتصل بالطرف RA4 بعبارة if وداخلها شرط دالة الضغط على المفتاح بداية نتأكد أن طرف توصيل المفتاح فى الحالة المرتفعة (الوضع الابتدائى) ونسخ هذه الحالة (الحالة القديمة) فى خانة تذكر باسم oldstate1 بعد ذلك أختبار تحول طرف توصيل المفتاح إلى الحالة المنخفضة إى تم الضغط على المفتاح ويتم ذلك بإجراء عملية AND &&بين هذه الحالة والحالة القديمة فإذا كانت النتيجة حقيقية يتم التأخبر لمدة 200 ملى ثانية للاستقرار ثم تزايد محتويات سجل المتغير "number" بواحد وتصفير خانة الحالة القديمة للتجهيز للضغطة التالية .
كود:
do{
if (Button(&PORTA, 4, 1, 1)) { // Detect logical
oldstate1 = 1; // Update flag
}
if (oldstate1 && Button(&PORTA, 4, 1, 0)) { // Detect one-to-zero transition
Delay_ms(200); // If button is pressed, delay 0,2s and decrement "number" with 1;
number = number +1;
oldstate1 = 0; // Update flag
}