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

   

الصورة الرمزية king5star
king5star
:: مهندس جيد ::
تاريخ التسجيل: Jun 2008
الدولة: Alexandria, Egypt
المشاركات: 238
نشاط [ king5star ]
قوة السمعة:
قديم 21-12-2009, 01:48 AM المشاركة 17   
افتراضي



تسلم على التحميل الثانى بس مش شغال فل من الممكن ان تحمله على موقع اخر و تتأكد من صحة الملف قبل رفعه

اعلانات

الصورة الرمزية king5star
king5star
:: مهندس جيد ::
تاريخ التسجيل: Jun 2008
الدولة: Alexandria, Egypt
المشاركات: 238
نشاط [ king5star ]
قوة السمعة:
قديم 21-12-2009, 01:53 AM المشاركة 18   
افتراضي


تسلم ايدك على البرنامج الرائع دا والى حيسهل علينا كتير بس ممكن ترفعه هو الى الملف بتاع البرنامج على موقع اخر زى الميديا فير

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

الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,315
نشاط [ ناصراحمد2 ]
قوة السمعة:
قديم 21-12-2009, 02:21 AM المشاركة 19   
افتراضي


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


هذة اول مرة اقوم بالتحميل ع الميديافير


http://www.mediafire.com/?v1ymuzmtmoj


هذة جميع ملفات الدروس


اما اذا كنت تقصد ان برنامج البريتوس لا يعمل عندك

فهذا يكون اختلاف فى نسخ البريتوس


عليك الاستعانة باى صورة

وتقوم بالتوصيلات كما فى الصور بالظبط


بالتوفيق ان شاء الله


الصورة الرمزية king5star
king5star
:: مهندس جيد ::
تاريخ التسجيل: Jun 2008
الدولة: Alexandria, Egypt
المشاركات: 238
نشاط [ king5star ]
قوة السمعة:
قديم 21-12-2009, 02:49 AM المشاركة 20   
افتراضي


تسلم ايدك يا باشا على الاهتمام دا ومتشكر على الملفات


khalid007
:: مهندس ::
تاريخ التسجيل: Feb 2009
المشاركات: 10
نشاط [ khalid007 ]
قوة السمعة:
قديم 21-12-2009, 04:01 AM المشاركة 21   
افتراضي


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


الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,315
نشاط [ ناصراحمد2 ]
قوة السمعة:
قديم 22-12-2009, 01:17 AM المشاركة 22   
angry الدرس الثالث


(الدرس الثالث)



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


حاليا يتم تجهيز الدرس الثالث باذن الله



واحب ان اعطى نصيحة للجميع

وهى كلمات اقتبصها من استاذى احمد سمير

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

(فلا يمكنك بناء منزل الطابق الثالث او الرابع

دون بناء الدور الاول والثانى بشكل سليم)



واذكركم :

انة يجب عليكم متابعة الاوامر التى اشرنا اليها فى الدرس السابق

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


)))))))))))))))))))))))))))))))))))))))))))))))))) )))))))))))))))


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

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




مرحبا بالجميع اتمنى انى مااكون اتاخرت عليكم

عموما لو كنت تاخرت قليلا فهذا متعمد

حتى تسترجعون الشروحات التى سبق ذكرها من قبل

وتراجعوا دروس البرمجة لاستاذنا احمد

واتمنى ان تكونو قد تعرفتو على :


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

مثال:
char n; char m; char x;

(for) وهذا الامر نستخدمة اذا اردنا ان يقوم البك بامر معين عدد معين من المرات
مثال :
كود:
 for(x=0;x<9;x++)
العدد هنا اعتقد واضح 9


while(1)
كود:
   while(1)

وهذا الامر ان يعيد البك الاوامر كلها وباستمرار

وهى بالظبط مثل loop: وهذة يتم وضعها فى اول الكود و goto loop; وهذة يتم وضعها اخر الكود

()()()()()()()()()()()()()()()()()()()()()()()

واليكم الان صور الاخ 16f877a مممممممممم يعتبر غول بالمقارنة بالاخير 16f84a





وللزيادة فى المعلومات اليكم الرابط

http://hobby_elec.piclist.com/e_pic6_h04.htm




وكما تشاهدون عدد المخارج كثيرة جدا

كنا نستخدم المخارج a B


وسوف نستخد اليوم البورت B ونستبدل البورت A بالبورت D فى 16f877a





وهذا يعطينا 8 مخارج + 8 مخارج

وبامكاننا الان ان نقوم بكتابة الحرف N بشكل اكبر ونقط اكثر




ياترى ياشباب حد منكم شرب شاى ولا لا ؟؟؟؟؟؟؟؟؟؟؟؟

ونسينا اليوم نرش المية امام الدكان خخخخخخخخخخخ



يلا نلحق نرش المية ونقول توكلنا على الله





شاااااااااااااااااااااااااااااااااطرين



واليكم الكود الجديد


ولاحظو التغييرات

بورت D مثل ماسبق وشرحنا هى بديل بورت A



وسوف تجدون ان الكود اصبح اكبر بعدد 3اوامر وهذا هو الفرق فى عدد الارجل



اليكم الكود:


كود:
void main() { TRISB=0; PORTB=0; TRISd=0; PORTd=0; loop: PORTd=0B11111110; PORTB=0B11111111; delay_us(300); /////////// PORTd=0B11111101; PORTB=0B11111111; delay_us(300); ///////////// PORTd=0B11111011; PORTB=0B00000110; delay_us(300); //////////// PORTd=0B11110111; PORTB=0B00001000; delay_us(300); /////////// PORTd=0B11101111; PORTB=0B00010000; delay_us(300); /////////////////// PORTd=0B11011111; PORTB=0B00110000; delay_us(300); //////////// PORTd=0B10111111; PORTB=0B11111111; delay_us(300); /////////// PORTd=0B01111111; PORTB=0B11111111; delay_us(300); goto loop; }




واليكم صورة البرنامج وهو يعمل واول حرف من اسمى اصبح اكبر ههههههههه




واليكم ايضا صورة لاعدادات الميكروسى هذة العلامة باللون الازرق مهم فيها هذا الخيار ( LVE_OFF )








7777777777777777777777777777



77777777777777777777


777777777777


77777



777




ياترى مارايكم فى المتحكم الجديد؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟



HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH



والان فلنذهب جميعا الى الاكشن

واللعب

والاشياء الجميلة


كلنا نقوم بتحميل المعدات وننصب الخيم

ونلعب مع ال led matrix for animation




ولكن قبل ان نتحرك


نحتاج الى عودة سريعة لما سبق فى هذا الدرس

كما شاهدتم فقد استخدمنا البورت D لتحريك الصفوف

واستخدمنا بورت B لاخراج ال DATA او ماتشاهدة العين على الشاشة صح ام لا ؟



اوك

وهذا ماتم عرضة


0B11111111
0B11111111
0B00000110
0B00001000
0B00010000
0B00110000
0B11111111
0B11111111

كما تلاحظون فقد قمت بتظليل ماتم اظهارة على الشاشة


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

واولهم امر ال char وكما قلنا من قبل ان هذا لحجز مكان فى الذاكرة ويكون هذا دائما فى اول الكود وقبل كلمة void main

هنا لدينا 8 اعمدة

اذن سوف نحتاج الى حجز 8 اماكن

وسوف نعطيهم اسماء طبعا مختلفة

هكذا سوف تجدوهم فى اعلى البرنامج


كود:
char x1=0B11111111; char x2=0B11111111; char x3=0B00000110; char x4=0B00001000; char x5=0B00010000; char x6=0B00110000; char x7=0B11111111; char x8=0B11111111;
وكما تشاهد يااخى ويازميلى

انة تم وضع الداتا بنفس الترتيب ونفس الشكل ممممممممممم


سوف نعيد التجربة السابقة الان

ولكن مع استخدام المتغيرات


واليكم الكود :

كود:
char x1=0B11111111; char x2=0B11111111; char x3=0B00000110; char x4=0B00001000; char x5=0B00010000; char x6=0B00110000; char x7=0B11111111; char x8=0B11111111; char n; void main() { TRISB=0; PORTB=0; TRISd=0; PORTd=0; loop: PORTd=0B11111110; PORTB=x1; delay_us(300); /////////// PORTd=0B11111101; PORTB=x2; delay_us(300); ///////////// PORTd=0B11111011; PORTB=x3; delay_us(300); //////////// PORTd=0B11110111; PORTB=x4; delay_us(300); /////////// PORTd=0B11101111; PORTB=x5; delay_us(300); /////////////////// PORTd=0B11011111; PORTB=x6; delay_us(300); //////////// PORTd=0B10111111; PORTB=x7; delay_us(300); /////////// PORTd=0B01111111; PORTB=x8; delay_us(300); goto loop; }

قم بوضع هذا الكود وسوف تشاهد نفس النتيجة السابقة

ولكن استخدمنا هنا التعريفات وهى char



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


سوف ننتقل الان الى الخطوة التالية فى طريقنا لتحريك الماتركس

وهو الامر فور for


سوف نقوم باستخدام الامر for لكى يقوم البرنامج باعادة الاوامر الى عدد ممكن نختار 100 مثلا اوك 100 مرة ان شاء الله


واليكم الكود :


كود:
char x1=0B11111111; char x2=0B11111111; char x3=0B00000110; char x4=0B00001000; char x5=0B00010000; char x6=0B00110000; char x7=0B11111111; char x8=0B11111111; char n; void main() { TRISB=0; PORTB=0; TRISd=0; PORTd=0; loop: for(n=0;n<100;n++){ PORTd=0B11111110; PORTB=x1; delay_us(300); /////////// PORTd=0B11111101; PORTB=x2; delay_us(300); ///////////// PORTd=0B11111011; PORTB=x3; delay_us(300); //////////// PORTd=0B11110111; PORTB=x4; delay_us(300); /////////// PORTd=0B11101111; PORTB=x5; delay_us(300); /////////////////// PORTd=0B11011111; PORTB=x6; delay_us(300); //////////// PORTd=0B10111111; PORTB=x7; delay_us(300); /////////// PORTd=0B01111111; PORTB=x8; delay_us(300); } goto loop; }

استخدم هذا الكود طبعا على نفس ملف الهاردوير


مممممممممممممم


ماذا حدث


طبعا نجد انة لا شىء جديد

ولكن هل لا جديد فعلا ؟؟؟؟؟؟؟؟؟؟؟؟؟

NNNNNNNNNNNNNNNNMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNN



لا طبعا يوجد جديد وجديد

الان قمنا بخطوتين من خطوات وضع الكود المتحرك ...................




الخطوة الهامة وانا اسميها خطوة الالتفاف



وهى اهم مافى الموضوع وهى ان نجعل x1 يتحرك ويذهب مكان x2


وهكذا يكون اكس 1 مكان اكس 2 واكس2 مكان اكس3 واكس4 مكان اكس4 وهكذا وهكذا



ٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍٍZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ


كما تعلمون جميعا هذة العلامة ( })


وهى دائما نهاية الامر او نهاية البرنامج


وكما تشاهدون داخل الكود السابق فى اسفل الكود يوجد نفس العلامة مكررة مرتين


مرة قبل goto loop;


ومرة بعدها

والتى بعدها هى نهاية البرنامج بالكامل


اذهب الى ماقبل جو تو لووب


وسوف نضع هذا السلم

او الدوران

سمية كما تحب

x1=x2
x2=x3
x3=x4
x4=x5
x5=x6
x6=x7
x7=x8
x8=x1



?????????????????????


حد فاهم حاجة ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟




اعتقد انة هناك بعض فهم والاخر ممممممممممم


اوك ماذا تم هنا


ماتم هنا اننا قمنا بتغيير مايتم عرضة على الشاشة

ولكن بدون مانغير مكانهم

وانما قمنا بامر الرموز وهى التى تحتوى على الداتا بالدوران حول نفسها




واليكم الكود النهائى


::::::::::::::::::::::::::::



كود:
char x1=0B11111111; char x2=0B11111111; char x3=0B00000110; char x4=0B00001000; char x5=0B00010000; char x6=0B00110000; char x7=0B11111111; char x8=0B11111111; char n; void main() { TRISB=0; PORTB=0; TRISd=0; PORTd=0; loop: for(n=0;n<100;n++){ PORTd=0B11111110; PORTB=x1; delay_us(300); /////////// PORTd=0B11111101; PORTB=x2; delay_us(300); ///////////// PORTd=0B11111011; PORTB=x3; delay_us(300); //////////// PORTd=0B11110111; PORTB=x4; delay_us(300); /////////// PORTd=0B11101111; PORTB=x5; delay_us(300); /////////////////// PORTd=0B11011111; PORTB=x6; delay_us(300); //////////// PORTd=0B10111111; PORTB=x7; delay_us(300); /////////// PORTd=0B01111111; PORTB=x8; delay_us(300); } x1=x2; ////بداية الدوران x2=x3; x3=x4; x4=x5; x5=x6; x6=x7; x7=x8; x8=x1; ///// نهاية الدوران goto loop; }


مبروك على الجميع قد تم تحريك حرف ال N

وسوف تجدة يتحرك من الاسفل الى الاعلى مثلا

فقط ماعلينا الا ان نحدد بالماوس على مربع الماتركس

ونختار كلك يمين ونختار السهم الذى يدور حول نفسة ونعدل الماتركس






جارى رفع الملفات




http://www.4shared.com/file/17915016...b/lesson3.html



تم بحمد الله رفع ملفات الدرس الثالث

اتمنى من الاخوة المتابعين

ان يقوم من لدية الملف برفع الملف لمن يطلبة

فهناك بعض المواقع تفتح مع السعوديين وبعضها لا يفتح

وهذا لانة يوجد لديهم مواقع محجوبة






















































ملاحظة هامة على الدرس الثالث

سوف تلاحظون ان الحرف يتحرك

وهو غير واضح

وهذا سببة انة لا يوجد فاصل

وهذا ماسوف نوضحة ونتعلم كيفية عمل فاصل بين الحرف والاخر





اعتقد كفاية عليكم اليوم كدة هههههههههههههه بصراحة تعبت



عموما الف مبروك مشاهدة الحرف يتحرك






واترككم مع اجهزتكم حتى تراجعوا الدرس بروقان مع شرب الشااااااااااى طبعا




:atu::atu::atu:




بسم الله ولا حول ولا قوة الا بالله

هو ربنا وهو مولانا وهو على كل شىء قدير

اللهم لا الة الا انت سبحانك انى كنت من الظالمين






































































































#


التعديل الأخير تم بواسطة : ناصراحمد2 بتاريخ 23-12-2009 الساعة 02:15 AM

الصورة الرمزية king5star
king5star
:: مهندس جيد ::
تاريخ التسجيل: Jun 2008
الدولة: Alexandria, Egypt
المشاركات: 238
نشاط [ king5star ]
قوة السمعة:
قديم 22-12-2009, 01:59 AM المشاركة 23   
افتراضي


فى انتظارك يا باشا

وتسلم ايدك على الشغل دا


الصورة الرمزية ah78
ah78
:: مهندس متواجد ::
تاريخ التسجيل: Apr 2006
المشاركات: 71
نشاط [ ah78 ]
قوة السمعة:
قديم 22-12-2009, 01:35 PM المشاركة 24   
افتراضي


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



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