استعملت المقاطعات للاهميتها الشديده
واستخدمت النوع الثالث اي باستخدام rb4-rb7
لكن المشكلة ان البرنامج لاينفذ الا زر واحد حتى لو عمل زر اخر
بمعني اخر
كود:
void interrupt() {
if (portb.f4==0) {
delay_ms(200);
k=1;
if(portb.f5==0)
k=3;
} else
if(portb.f4!=0)
k=0;
if (portb.f5==0) {
delay_ms(200);
k=2; }
if (portb.f6==0) {
delay_ms(200);
k=3; }
if (portb.f7==0) {
delay_ms(200);
k=4; }
intcon.f0=0; }
هو ينفذ زر واحد اي عند الضغط على portb.f4 هو يعمل ضغطت على زر اخر portb.f5 لاينفد التعليمة تبع ان الزريم معا يعملنا يضل باقي على التعليمة الاولى
مهما حدث .. فهل ممكن المساعده
تم وضع الكود بالاعلى
ووعمل الكود كالتالي
عند الضغط على الزر الاول يظهر رقم 1 وعند الظغط على الزر الثاني portb.f5 يظهر 2
وهكذا ..
وعند عدم الضغط على اي زر يظهر صفر اي لايظهر اي قيمة ..
وعند ظغط مفتاحين معا يظهر مجموعهم معا ..
اي عند ظغط الزر الاول مع الثاني ظهر 3 وعند ظغط الزر الثاني مع الزر الرابع يظهر رقم 6 وهكذا
ومشكورين مقدما