قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

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

زائر 1
:: مهندس ::
تاريخ التسجيل: May 2006
المشاركات: 12
نشاط [ زائر 1 ]
قوة السمعة:0
قديم 22-08-2009, 02:47 PM المشاركة 1   
افتراضي مشروع بيك تحويل الى عشري وثنائي Twitter FaceBook Google+



السلام عليكم
مشروع تحوي الارقام التي تضغطها في الكي باد الى النظامين العشري والثائي
ملف مضغوط يحتوي على فديو للمشروع

الرابط لمن اراد التحميل والنقد البناء

رابط الفديو
http://www.zshare.net/download/64455014bb724488/

رابطالمشروع
http://www.zshare.net/download/64494198b0bb3712/

مع خالص تقديري وشكري للاستاذ احمد سمير فايد

اعلانات

robota
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: الخرطوم_السودان
المشاركات: 926
نشاط [ robota ]
قوة السمعة:103
قديم 22-08-2009, 03:33 PM المشاركة 2   
افتراضي


ماشاء الله مشروع جيد . لكن مارايك لو استخدمتLCD لتحويل ارقام مكونة من اكثر من خانة. والى الامام دوما

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

16mofed84
:: مهندس متميز ::
تاريخ التسجيل: Jul 2009
الدولة: فلسطين
المشاركات: 322
نشاط [ 16mofed84 ]
قوة السمعة:0
قديم 23-08-2009, 01:03 PM المشاركة 3   
افتراضي


لا اعتقد انك بحاجة لاستعمال البيك الا ان كنت تحب البرمجه او انك عملها باكثر من خانة
يمكنك عمل ب7447 وبعض الدايودات ولست بحاجة لتوصيلة الكيباد يمكن عملها بكبسات عاديه
لاحظت ان الامر غير مستفاد منه (قد اكون اطات في الكتابه )
كود:
kp=keypadread();
يقوم هذا الكود بقراءه الكيباد (عباره عن عده اوامر تقوم بالقراءه الجاهزه)ويضع الجواب في kp او الذي تحدده اذا ضغط 1 يضع 1 في kp قد تكون شكل الكيباد المبرمجة عليه غير المكتوب
____________
|1 2 3 | 3 2 1 | احدى 2
|4 5 6 | 6 5 4 |
|7 8 9 | 9 8 7 | او غير ذلك
|_____|_____|
هناك شكل اخر
_____
|123a|
|456b|
|789c|
|____| 4x4
الكيباد الموجوده في المايكرو سي 4X4


التعديل الأخير تم بواسطة : 16mofed84 بتاريخ 23-08-2009 الساعة 01:52 PM

أشرف الخطيب
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
الدولة: مصــــــــــــــــــــــــــــــر
المشاركات: 195
نشاط [ أشرف الخطيب ]
قوة السمعة:0
قديم 23-08-2009, 02:31 PM المشاركة 4   
افتراضي


جزاك الله خيرا أخى الكريم على المشروع .

ولكن هل يمكن رفع المشروع والفيديو على رابط آخر ؟؟ ولك كل الشكر


16mofed84
:: مهندس متميز ::
تاريخ التسجيل: Jul 2009
الدولة: فلسطين
المشاركات: 322
نشاط [ 16mofed84 ]
قوة السمعة:0
قديم 25-08-2009, 07:05 AM المشاركة 5   
افتراضي


1:انه منقول من f1 help
2:انك لم تستفد منه في الموضوع فقط امر ومكتوب
3:انه يوجد امر جديد يعين البورت الموصول في الكي باد
كود:
keypad_uint(&portb);
اضغك ctrl +Space او من f1 help لتاكد من الكتابه الصحيحه


التعديل الأخير تم بواسطة : ahmad_s_f بتاريخ 25-08-2009 الساعة 03:04 PM

الصورة الرمزية ahmad_s_f
ahmad_s_f
:: المهندس/ أحمد سمير فايد ::
تاريخ التسجيل: Jun 2006
الدولة: سائح في ارض الله
المشاركات: 725
نشاط [ ahmad_s_f ]
قوة السمعة:80
قديم 25-08-2009, 03:37 PM المشاركة 6   
افتراضي


بسم الله الرحمن الرحيم ...


أولا : وقبل كل شيء أحب أن أن أقول رأيي: وهو جزاك الله كل خير على ما فعلت .. من حيث قدمت المشروع للجميع والأجمل والأروع أنك قمت بعمل فيديو به شرح كيف يعمل المشروع ....


أكرمك الله وسدد خطاك وإلى مزيد من التميز أخي العزيز .


========================
ثانيا : لقد قمت بتعديلات أو حذف لبعض المشاركات .. أعتذر عن ذلك ولكنني مضطر لذلك ... رمضان كريم يا جماعة ..!! ..




========================
ثالثا :
أخي الكريم لقد طلبت مني النقد البناء لمشروعك وتلبية لطلبك سنتناقش في بعض الأمور أهمها الكود والتوصيلات .

كود:
 
void main (){ unsigned short kp;
PORTA = 0; PORTB = 0; TRISA = 0; TRISB = 7;
Keypad_Init(&PORTB);
for(;;){
kp = Keypad_Read();
if (PORTB.F0==1 && PORTB.F4==1) { PORTA=0b00000001 ; Delay_ms(20); } else if (PORTB.F1==1 && PORTB.F4==1) { PORTA=0b00000010 ; Delay_ms(20); } else if (PORTB.F2==1 && PORTB.F4==1) { PORTA=0b00000011 ; Delay_ms(20); } else if (PORTB.F0==1 && PORTB.F5==1) { PORTA=0b00000100 ; Delay_ms(20); } else if (PORTB.F1==1 && PORTB.F5==1) { PORTA=0b00000101 ; Delay_ms(20); } else if (PORTB.F2==1 && PORTB.F5==1) { PORTA=0b00000110 ; Delay_ms(20); } else if (PORTB.F0==1 && PORTB.F6==1) { PORTA=0b00000111 ; Delay_ms(20); } else if (PORTB.F1==1 && PORTB.F6==1) { PORTA=0b00001000 ; Delay_ms(20); } else if (PORTB.F2==1 && PORTB.F6==1) { PORTA=0b00001001 ; Delay_ms(20); } else if (PORTB.F1==1 && PORTB.F7==1) { PORTA=0b00000000 ; Delay_ms(20); } else { PORTA=0b00000000 ; } } }
سأكتفي الآن بوضع الكود الذي قمت بكتابته أنت أخي الكريم وفي مشاركتي القادمة سأذكر بعض التعليقات إن شاء الله
.. وجزاك الله خيرا وبارك فيك .


التعديل الأخير تم بواسطة : ahmad_s_f بتاريخ 25-08-2009 الساعة 08:21 PM

الصورة الرمزية ahmad_s_f
ahmad_s_f
:: المهندس/ أحمد سمير فايد ::
تاريخ التسجيل: Jun 2006
الدولة: سائح في ارض الله
المشاركات: 725
نشاط [ ahmad_s_f ]
قوة السمعة:80
قديم 09-09-2009, 01:38 AM المشاركة 7   
افتراضي


جمل If المتتالية التي استخدمتها .. لم تكن بحاجة إليها . لأنك من المفترض أنك تستخدم المكتبة الخاصة بـ keypad حيث قمت بكتابة الأمر
كود:
kp = Keypad_Read();

لذلك كان أمامك حلين : إما أن تختبر المتغير kp وعلى حسب قيمته يتم معرفة أي المفاتيح هي التي ضغط عليها . وحينها لن تحتاج لجمل if التي تختبر حالة كل طرف .

كود:
if (PORTB.F0==1 && PORTB.F4==1) { PORTA=0b00000001 ; Delay_ms(20); } else if (PORTB.F1==1 && PORTB.F4==1) { PORTA=0b00000010 ; Delay_ms(20); } else if (PORTB.F2==1 && PORTB.F4==1) { PORTA=0b00000011 ; Delay_ms(20); } else if (PORTB.F0==1 && PORTB.F5==1) { PORTA=0b00000100 ; Delay_ms(20); } else if (PORTB.F1==1 && PORTB.F5==1) { PORTA=0b00000101 ; Delay_ms(20); } else if (PORTB.F2==1 && PORTB.F5==1) { PORTA=0b00000110 ; Delay_ms(20); } else if (PORTB.F0==1 && PORTB.F6==1) { PORTA=0b00000111 ; Delay_ms(20); } else if (PORTB.F1==1 && PORTB.F6==1) { PORTA=0b00001000 ; Delay_ms(20); } else if (PORTB.F2==1 && PORTB.F6==1) { PORTA=0b00001001 ; Delay_ms(20); } else if (PORTB.F1==1 && PORTB.F7==1) { PORTA=0b00000000 ; Delay_ms(20); } else { PORTA=0b00000000 ; }
والحل الثاني : وهو الذي يعتمد عليه الكود الذي كتبته . وهو جمل if التي تختبر حالة كل طرف كما فعلت أنت , وحينها لم يكن هناك داعي لكتابة الأمر
كود:
kp = Keypad_Read();
لأنك لم تستفد منه بشيء .

============
هذه فقط ملاحظتي الخاصة بالكود .. أما فيما يتعلق بالدائرة الالكترونية فإنها تعمل جيدا في برنامج المحاكاة أما عند تطبيقها في الواقع فيجب وضع مقاومات قبل السفن سيجمنت حتى لا تتلف ,, كما يجب وضع مقاومات لكل عمود من الـkeypad , كما في الرسمة الخاصة بمشروع التحكم في 47 ريلاي ...
أشكرك جزيل الشكر على موضوعك الجميل , وآسف جدا على تأخري في الرد
============

وأشكرك على موضوعك الجميل ,, وتمنياتي لك بكل التوفيق والتميز


التعديل الأخير تم بواسطة : ahmad_s_f بتاريخ 09-09-2009 الساعة 01:44 AM
إضافة رد

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

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

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


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

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025