القرية الإلكترونية - الكترونيات - كمبيوتر - هاردوير - خدمات المواقع - كهرباء - فضائيات - جوال - اتصالات - تكييف وتبريد - اجهزة الانتاج الزراعي - كهرباء السيارات

كود تفعيل العضوية - الابلاغ عن روابط لاتعمل - صيانة التلفزيون - الحاسبة - الأعضاء المتميزين - البرامج و المخططات - بث مباشر للقنوات الفضائية - إذاعة - تردد القنوات - بحث


لوحة مفاتيح عربية

العودة   منتدى القرية الإلكترونية > القسم الالكتروني > منتدى الإلكترونيات
التسجيل       اجعل كافة المشاركات مقروءة

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

رد
 
أدوات الموضوع
قديم 19-06-2013, 07:05 PM   #1
vie.logic
مهندس متميز
 
الصورة الرمزية vie.logic

الدولة: المغرب
المشاركات: 367
أحصائية الترشيح

عدد النقاط : 81


النشاط

معدل تقييم المستوى: 0
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);
}
vie.logic غير متواجد حالياً   رد مع اقتباس مشاركة محذوفة
اعلانات
رد

العلامات المرجعية

أدوات الموضوع

تعليمات المشاركة
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع إلى

الساعة الآن: 10:20 AM


Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025
Feedback Buttons provided by Advanced Post Thanks / Like (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
القرية الإلكترونية