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

مشاهدة نتائج الإستفتاء: هل ترى أنه من الأفضل عمل قسم جديد في المنتدى للغات الحديثة مثل لغة MikroC ؟؟
نعم 53 92.98%
لا 4 7.02%
المصوتون: 57. أنت لم تصوت في هذا الإستفتاء

   

الصورة الرمزية coiffa
coiffa
:: مهندس متواجد ::
تاريخ التسجيل: Jan 2009
المشاركات: 142
نشاط [ coiffa ]
قوة السمعة:
قديم 09-02-2009, 09:08 PM المشاركة 17   
افتراضي



السلام عليكم
اخي احمد ارجو منك ان توضح لي هذه السطور من الدرس الاول في كتابك فقد اختلط عليا الامر
فمن ناحية قلت سنجعل BO بصفر لتصبح خرج و من ناحية اخرى
سنجعل BO بواحد ....واحد تجعله يخرج جهد +5V
و من نا حية اخرى
Output تعني خرج.....0
Input تعني دخل...1
ارجو منك اخي ان تكون صبورا معي في امان الله.

اعلانات

nadir
:: مهندس متواجد ::
تاريخ التسجيل: Jun 2008
الدولة: الجزائر
المشاركات: 72
نشاط [ nadir ]
قوة السمعة:
قديم 09-02-2009, 09:29 PM المشاركة 18   
افتراضي


السلام عليكم و رحمة الله تعالى و بركاته


السلام عليكم
اخي احمد ارجو منك ان توضح لي هذه السطور من الدرس الاول في كتابك فقد اختلط عليا الامر
فمن ناحية قلت سنجعل BO بصفر لتصبح خرج و من ناحية اخرى
سنجعل BO بواحد ....واحد تجعله يخرج جهد +5V
و من نا حية اخرى
Output تعني خرج.....0
Input تعني دخل...1
ارجو منك اخي ان تكون صبورا معي في امان الله.

اختي الفاضلة انت أختلطة عليك بين الأمرين TRISB و PORTB

TRISB هي أمر يخبر البك أي الأطراف التي ستكون خرج او مدخل فهي
Output تعني خرج.....0
Input تعني دخل...1
مثال :
TRISB=0B00111000
هذا يبين أن B0.B1.B2.B6.B7. مخارج و هي لن تخرج أي قيمة أن لم نضع الأمر
PORTB
و B3.B4.B5. هي مداخل .


أما
PORTB فهي الأمر الذي يخرج 5+فولت في الأطراف المحددة عنده

مثال :
PORTB=0B10000001
هذا الأمر يقوم بإخراج 5+فولت في كل من B0و B7 و الباقي 0 فولت و هذا بعد الأمر السابق .

و الله أعلم

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

الصورة الرمزية coiffa
coiffa
:: مهندس متواجد ::
تاريخ التسجيل: Jan 2009
المشاركات: 142
نشاط [ coiffa ]
قوة السمعة:
قديم 09-02-2009, 11:42 PM المشاركة 19   
افتراضي


السلام عليكم و رحمة الله تعالى و بركاته





اختي الفاضلة انت أختلطة عليك بين الأمرين TRISB و PORTB

TRISB هي أمر يخبر البك أي الأطراف التي ستكون خرج او مدخل فهي
Output تعني خرج.....0
Input تعني دخل...1
مثال :
TRISB=0B00111000
هذا يبين أن B0.B1.B2.B6.B7. مخارج و هي لن تخرج أي قيمة أن لم نضع الأمر
PORTB
و B3.B4.B5. هي مداخل .


أما
PORTB فهي الأمر الذي يخرج 5+فولت في الأطراف المحددة عنده

مثال :
PORTB=0B10000001
هذا الأمر يقوم بإخراج 5+فولت في كل من B0و B7 و الباقي 0 فولت و هذا بعد الأمر السابق .

و الله أعلم
السلام عليكم
اخي نذير مشكور على الاهتمام و الرد الواضح و كما اشرت لقد اختلطت عليا الامور فانا مبتدئة في هذا الميدان و ما جعلني اهتم به هو حبي له و حلم الاخوة في المنتدى للاجابة على الاسئلة مهما كانت بساطتها و ما لفت انتباهي هو التعاون بين افراد هذه الاسرة الله يوفقكم جميعا .


m_mansour2005
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2009
المشاركات: 80
نشاط [ m_mansour2005 ]
قوة السمعة:
قديم 10-02-2009, 03:47 AM المشاركة 20   
x4


السلام عليكم

الاسئلة قام الزملاء بالاجابة عنها بطريقة صحيحة . ولكن بالنسبة للسؤال الرابع
انا اعلم انه فى لغة السى هناك فرق بين الحروف الكبيرة والحروف الصغيرة.ولكن مايكروسى بصفة خاصة لا يوجد به فرق فالحروف الكبيرة والصغيرة كلاهما متساويان.
اى ان السؤال الرابع ليس به اخطاء.


الصورة الرمزية ahmad_s_f
ahmad_s_f
:: المهندس/ أحمد سمير فايد ::
تاريخ التسجيل: Jun 2006
الدولة: سائح في ارض الله
المشاركات: 632
نشاط [ ahmad_s_f ]
قوة السمعة:
قديم 10-02-2009, 11:22 AM المشاركة 21   
افتراضي


أخي الكريم m_mansour2005
وفقك الله لك ما يحب ويرضى

وأهلا وسهلا بك في هذه الدورة ...


ولكن بالنسبة للسؤال الرابع
انا اعلم انه فى لغة السى هناك فرق بين الحروف الكبيرة والحروف الصغيرة.ولكن مايكروسى بصفة خاصة لا يوجد به فرق فالحروف الكبيرة والصغيرة كلاهما متساويان.
كلامك سليم جدا ... السؤال الرابع ليس به أخطاء ولكن هذا بالنسبة للإصدارات الحديثة (في الإصدارات القديمة من اللغة كانت تعتبر هذه مشكلة وخطأ ) أما الإصدارات الحديثة والتي نستخدمها لا توجد مشكلة في هذا الأمر ... والله أعلم

لذلك سأعدل هذا الأمر في الكتاب بإذن الله لنتماشى مع الاصدارات الحديثة

شكراً لك أخي الكريم وبارك الله وفيك .

وفقنا الله جميعا لما يحب ويرضى ورزقنا وإياكم العلم النافع


الصورة الرمزية ahmad_s_f
ahmad_s_f
:: المهندس/ أحمد سمير فايد ::
تاريخ التسجيل: Jun 2006
الدولة: سائح في ارض الله
المشاركات: 632
نشاط [ ahmad_s_f ]
قوة السمعة:
قديم 14-02-2009, 01:47 AM المشاركة 22   
افتراضي


إخواني الكرام :: لكم جزيل الشكر عن السؤال عني فقد حصلت لي بعض الظروف الصحية والمهنية البسيطة التي عطلتني عن ذلك .. كما أنني عانيت بسبب رفع الملفات .............دعواتكم لي بتيسير أموري وجزاكم الله خير الجزاء على مشاعركم الطيبة ...

============================================

أخي ابو شهد :: أرجو وضع الرابط بعد إذنك علما أنني لست من نقل الموضوع وما يحزنني أن من نقل الموضوع لم يستأذن ... مع أنه من شروط الدورة الاستئذان كما ذكرت ذلك.

============================================

والآن لنكمل المسيرة ....على بركة الله

============================================

(الدرس الثاني)
يحتوي على ثلاث تجارب مختلفة

اخترت لكم في هذا الدرس ثلاث تجارب من كتابي ( احترف برمجة المايكروكنترولر) .. دعواتكم لي بحسن الانتهاء منه ..

التجربة الأولى :: تعتبر تطيبق على الدرس الأول وليس بها جديد إلا بعض المعلومات البسيطة ..

التجربة الثانية والثالثة يعتبروا هم الدرس الجديد ... أرجو أن تستفيدوا وتستمتعوا بهم وأنا في انتظار التفاعل والأسئلة الخاصة بالموضوع فقط ... وأعيد التنبيه إلى أنه لا يجوز السؤال في غير موضوع الدورة ولن يلتفت لأي سؤال خارج الدورة ... ومن أراد السؤال خارج الموضوع فعليه مراسلتي على الخاص أو وضع موضوع مستقل بذلك أرجو مراجعة شروط الدورة ..

=========================================

الدرس الثاني عبارة عن ملفين ..

ملف به الشرح الكامل للثلاث تجارب وهو ملف pdf تستطيع تحميله من هنا

والملف الثاني هو ملف مضغوط يحتوي على الشرح الفيديو الخاص بالمحاكاه بالإضافة لملفات الكود والهيكس والمحاكاه الخاصة بالتجارب
تستطيع تحميله من هنا بعد تحميله فك الضغط وشغل الملفات

رابط آخر للفيديو الخاص بالدرس الثاني من هنا

=============================================

وفقنا الله جميعا لما يحب ويرضى ورزقنا وإياكم العلم النافع
والسلام عليكم ورحمة الله وبركاته


التعديل الأخير تم بواسطة : ahmad_s_f بتاريخ 14-02-2009 الساعة 11:16 AM

الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 14-02-2009, 03:05 AM المشاركة 23   
افتراضي الرابط ما يشتغل


استاذ احمد
في جهاز البرمجة الذي تستخدمه لماذا لانستغني عن الخطوط الزائدة
(vs1 و vs4 ) ما دام المتحكم لايركب فيها

شكرا لك
ومرحبا بعودتك


التعديل الأخير تم بواسطة : حيدر علاج حسن بتاريخ 14-02-2009 الساعة 03:39 AM

الصورة الرمزية ahmad_s_f
ahmad_s_f
:: المهندس/ أحمد سمير فايد ::
تاريخ التسجيل: Jun 2006
الدولة: سائح في ارض الله
المشاركات: 632
نشاط [ ahmad_s_f ]
قوة السمعة:
قديم 14-02-2009, 03:24 AM المشاركة 24   
افتراضي


في جهاز البرمجة الذي تستخدمه لماذا لانستغني عن الخطوط الزائدة
(vs1 و vs4 ) ما دام المتحكم لايركب فيها
المتحكم PIC16F84A لا يحتاج إلى VS1 , VS4 كما ذكرت فعلا فهو 18 طرف .. ولكن جهاز البرمجة هذا ليست وظيفته برمجة نوع واحد فقط من المتحكمات ... ولكنه يبرمج الكثير من الأنواع والتي منها ما يحتوي على 40 طرف والذي سيحتاج VS1 , VS4
=================================================
=================================================

((تمارين على الدرس الثاني))

كما ذكرنا سابقا .. فإن التمارين تساعد على عملية الفهم وتقويها بل وتختبر مدى وقوة الفهم أيضا ..

السؤال الأول :: لدينا عنصرين الكترونيين تم توصيلهم بطرفي من المايكروكنترولر هذين الطرفين هما b0 و b1 ...... والمطلوب هو كتابة برنامج يشغل العنصر الأول الموصل بـ b0 ثم انتظار لمدة خمس ثواني وربع ثم تشغيل العنصر الثاني والموصل بـ b1 ثم انتظار لمدة ثلاث ثواني ونصف ثم إطفاء العنصرين ...(وتكرار هذه العملية باستمرار )

-------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------

السؤال الثاني : اكتب برنامج يضيء الليدات الموصلة بـ portb أي موصلة بالرجول من b0 إلى b7 ثم انتظار لمدة نصف ثانية ثم إطفاء جميع الليدات .... اكتب هذا البرنامج مرتين مرة ينفذ فيها البك ما سبق مرة واحدة دون تكرار ... ومرة بتكرار تنفيذ الأوامر دائما .

-------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------

السؤال الثالث : اكتب برنامج يجعل البك ينتظر لمدة 800 ملي ثانية ثم يخرج جهد موجب (خمسة فولت ) عن طريق الرجول b0 b3 b6 ثم ينتظر لمدة 200 ملي ثانية ثم يخرج جهد (5 فولت) عن طريق الرجول b1 b2 b4 فقط أما باقي الرجول فلا يخرج جهد خمسة فولت ثم ينتظر عشر ثواني. ( يتم تكرار تنفيذ البرنامج باستمرار)

-------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------

السؤال الرابع : في البرنامج التالي اشرح ما سينفذه البك ( اشرح الأوامر .. أمر أمر )

كود:
void main() { TRISB=0; PORTB=0XD6; delay_ms(500); PORTB=0X55; delay_ms(600); }
-------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------

السؤال الخامس : حاول اكتشاف الأخطاء التي في البرامج التالية (أخطاء في طريقة كتابة الكود) ::
البرنامج الأول :-

كود:
void main { TRISB=0BFF; PORTB=0; }
البرنامج الثاني :

كود:
void main() TRISB=0B00000001; PORTB=0X55;
البرنامج الثالث :

كود:
void main() { TRISB=0; PORTB=0B11111110 }
البرنامج الرابع :

كود:
{ TRISB=0; AHMAD: PORTB=0; delay_ms(250); PORTB=0XFF; delay_ms(250); goto AHMAD; }
البرنامج الخامس :

كود:
void main() { TRISB=0; loop; POTRB=0XFF; delay_ms(500) PORTB=0; goto loop; }

البرنامج السادس :

كود:
void main() {TRISB=0; AA: PORTB=0XFF; delay_ms(300); PORTB=0;go to AA; }
البرنامج السابع :
كود:
/********************************* prject : led Flasher Name : ahmad Samir Fayed date : 14/2/2009 *********************************/ void main() TRISB=0; //ALL PINS ARE OUTPUT AH: PORTB=0XFF; delay_ms(600); //wait for 600 milli second PORTB=0; /all leds is off delay_ms(600); goto AH; //to repeat program }

البرنامج الثامن :

كود:
void main() { TRISB=0; // ALL PINS ARE OUTPUT PORTB=0; delay_m(500); // wait for 500 milli seconds PORTB=0XFF; }
البرنامج التاسع :

كود:
/********************* Name of project : led amazing By : AHMAD EL ALFY /************************ void main() { TRISB=0; mm: PORTB=0XFF; delay_ms(1500) PORTB=0; delay_ms(1500); goto mm; }
-------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------

السؤال السادس : في برنامج وظيفته إضاءة الليد الموصل بـ b7 ثم انتظار لمدة معينة ثم إطفاءه وتكرار ذلك باستمرار قام أحد الأشخاص بكتابة كود لهذا البرنامج ...
وتم ترجمة البرنامج ولم ينتج أي أخطاء .. ومع ذلك لم يؤدي البرنامج الوظيفة المطلوبة ... يا ترى لماذا ؟؟؟ وماذا سيحدث عند تطبيق هذه الدائرة في الحقيقة؟؟

كود:
void main() { TRISB=0; loop: PORTB=0XFF; delay_ms(1000); PORTB=0; goto loop; }

========================================
========================================
تمنياتي للجميع بالتوفيق .....



وفقنا الله جميعا لما يحب ويرضى ورزقنا وإياكم العلم النافع

والسلام عليكم ورحمة الله وبركاته


التعديل الأخير تم بواسطة : ahmad_s_f بتاريخ 14-02-2009 الساعة 03:29 AM


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