اخي حيدر من بعد اذنك ...الكود السابق كما اريد بارك الله فيك ولكن اخي لي ملاحظتين بسيتطين :الاولى و هو انني اريد ان تكون المقاومات pull down (عكس الرسمه اللي حضرتك عملتها) وهذا قمت بعمله و الحمد لله كذلك قمت بالتعديل على الكود حيث انني وضعت بدل الصفر واحد هكذا:
if(porta.f0==1){portb.f0=1;portb.f1=0;}
if(porta.f1==1){portb.f0=0;portb.f1=1;}
if(porta.f2==1){portb.f2=1;portb.f3=0;}
if(porta.f3==1){portb.f2=0;portb.f3=1;}
وكانت النتيجه كما اريد و الحمد لله........
اما المطلوب الثاني اخي و هو انني اريد ان يطفئ كل لد تمت اضائته بعد 15 ثانيه و ليس كما عملت حضرتك انو تطفئ كل اللدات في وقت واحد بعد 15 ثانيه في بداية التشغيل ....كذلك الامر نفس الطريقه االسابقه اي انه A&B لوحدهم(يلغو بعض) و C&D لوحدهم(يلغو بعض) فقط....
و لو سمحت اخي اذا ما فيها ثقله تشرحلي الاوامرالتاليه:
{cmcon=7;(هذه اعرفها لاننا نريد ان نحول الى دجتال (حسب معلوماتي)
trisa=15
(هنا اخي لماذا قمنا بجعل الدخل 15 و ليس 1111 او 0XFF مثلا و هل لو عملنا كذلك يكون الشغل مزبوط؟؟
trisb=0; هذا اعرفه و هو لتحديد البورت b على انه خرج
;portb=15 و هنا اخي نفس السؤال لماذا وضعنا الرقم 15 ؟؟ ولم نضع 0b1111 او 0xff و اذا كتبنا كذلك هل يكون الشغل صحيح؟؟
delay_ms(15000); هذا امر تاخير
portb=0; هنا اعتقد انه نريد الن تكون اللدات مطفئه في بداية تشغيل الداره ..اليس كذلك ؟؟
اسف جدا اخي على تلك الاسئله و لكن لانني اريد ان افهم ولا اريد ان ابصم فقط ...جزاك الله عني كل خير...