منتدى الإلكترونيات قسم الالكترونكس لمناقشة الافكار والمعلومات المتعلقة بالهندسة الالكترونية للمبتدئين والهواة والفنيين - Electronics

   

الصورة الرمزية vie.logic
vie.logic
:: مهندس متميز ::
تاريخ التسجيل: Nov 2011
الدولة: المغرب
المشاركات: 359
نشاط [ vie.logic ]
قوة السمعة:
قديم 19-06-2013, 10:05 PM المشاركة 1   
ha مساعدة مستعجلة جدا جدا



السلام عليكم
لدي هده الدائرة و اريد من كل زر من keypad ان يضيء ليد ادا ضغط عليه ثم يطفءها ادا ضغط عليه مرة اخرئ

https://www.dropbox.com/s/asbk257d4d...%20titre.png?m

الكود

char kp, cnt, oldstate = 0;
char txt[6];

// Keypad module connections
char keypadPort at PORTb;
// End Keypad module connections

void main() {
cnt = 0; // Reset counter
Keypad_Init(); // Initialize Keypad
trisa=0;
porta=0;

do {
kp = 0; // Reset key code variable

// Wait for key to be pressed and released
do
// kp = Keypad_Key_Press(); // Store key code in kp variable
kp = Keypad_Key_Click(); // Store key code in kp variable
while (!kp);
// Prepare value for output, transform key to it's ASCII value
switch (kp) {
//case 10: kp = 42; break; // '*' // Uncomment this block for keypad4x3
//case 11: kp = 48; break; // '0'
//case 12: kp = 35; break; // '#'
//default: kp += 48;

case 1: kp = 49; break; // 1 // Uncomment this block for keypad4x4
case 2: kp = 50; break; // 2
case 3: kp = 51; break; // 3
case 4: kp = 65; break; // A
case 5: kp = 52; break; // 4
case 6: kp = 53; break; // 5
case 7: kp = 54; break; // 6
case 8: kp = 66; break; // B
case 9: kp = 55; break; // 7
case 10: kp = 56; break; // 8
case 11: kp = 57; break; // 9
case 12: kp = 67; break; // C
case 13: kp = 42; break; // *
case 14: kp = 48; break; // 0
case 15: kp = 35; break; // #
case 16: kp = 68; break; // D

}

if(kp ==49)
porta.f0=1; // LED 1
else porta.f0=0;
if(kp ==50)
porta.f1=1; // LED 2
else porta.f1=0
if(kp ==51)
porta.f2=1; // LED 3
else porta.f2=0
if(kp ==54)
porta.f3=1; // LED 4
else porta.f3=0
if(kp ==53)
porta.f4=1; // LED 5
else porta.f4=0
} while (1);
}

اعلانات


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 12:20 PM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)